summaryrefslogtreecommitdiff
path: root/src/main/scala/com/nsrddyn
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/com/nsrddyn')
-rw-r--r--src/main/scala/com/nsrddyn/Main.scala2
-rw-r--r--src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala6
-rw-r--r--src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala26
-rw-r--r--src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala2
4 files changed, 24 insertions, 12 deletions
diff --git a/src/main/scala/com/nsrddyn/Main.scala b/src/main/scala/com/nsrddyn/Main.scala
index 3cc63a3..dd7530c 100644
--- a/src/main/scala/com/nsrddyn/Main.scala
+++ b/src/main/scala/com/nsrddyn/Main.scala
@@ -13,7 +13,7 @@ object Torque {
val now: Instant = Instant.now()
println(now)
- val pr = new Prime(4)
+ val pr = new Prime()
val intMax = 2147483647
pr.run(intMax)
diff --git a/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala b/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala
deleted file mode 100644
index 292676d..0000000
--- a/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala
+++ /dev/null
@@ -1,6 +0,0 @@
-package com.nsrddyn
-
-class ALU {
-
-
-}
diff --git a/src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala b/src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala
index 7a198f7..8cd39c3 100644
--- a/src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala
+++ b/src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala
@@ -3,11 +3,29 @@ package com.nsrddyn
import scala.util.hashing
class Hash {
-
- def hashString(): Unit = {
-
- println("Hello from hash function")
+import scala.util.hashing.MurmurHash3
+
+ def run(word: String, loopSize: Int): Unit = {
+
+ /* TODO: implement ALU friendly, so high speed hashing
+ * to continuously loop over voor stressing
+ * ALU
+ *
+ * While looking for hashing algorithmes to implement I stumbled on:
+ * https://scala-lang.org/api/3.x/scala/util/hashing/MurmurHash3$.html
+ *
+ * which is an implemntation of **smasher** http://github.com/aappleby/smhasher
+ * the exact type of hashing algorithm I was looking for
+ *
+ * In the scala description they state: "This algorithm is designed to generate
+ * well-distributed non-cryptographic hashes. It is designed to hash data in 32 bit chunks (ints). "
+ *
+ * (ints) -> ALU
+ *
+ */
+
+ for i <- 0 to loopSize do MurmurHash3.stringHash(word)
}
}
diff --git a/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala b/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala
index ca73e6b..3e6ad6f 100644
--- a/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala
+++ b/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala
@@ -2,7 +2,7 @@ package com.nsrddyn
-class Prime(threads: Int) {
+class Prime() {
/*