From 2adbea2fc2d02d3ad0a15ccc7fa94173b1dcf263 Mon Sep 17 00:00:00 2001 From: Abdellah El Morabit Date: Sat, 15 Nov 2025 23:16:41 +0100 Subject: feature: ALU boilerplate boilerplate classes for stressing the ALU --- src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala | 6 ++++++ src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala | 13 +++++++++++++ src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala | 5 +++++ 3 files changed, 24 insertions(+) create mode 100644 src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala create mode 100644 src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala create mode 100644 src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala (limited to 'src/main/scala/com/nsrddyn') diff --git a/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala b/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala new file mode 100644 index 0000000..292676d --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/ALU/ALU.scala @@ -0,0 +1,6 @@ +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 new file mode 100644 index 0000000..7a198f7 --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/ALU/Hash.scala @@ -0,0 +1,13 @@ +package com.nsrddyn + +import scala.util.hashing + +class Hash { + + def hashString(): Unit = { + + println("Hello from hash function") + + + } +} diff --git a/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala b/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala new file mode 100644 index 0000000..7a80df4 --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/ALU/Prime.scala @@ -0,0 +1,5 @@ +package com.nsrddyn + +class Prime { + +} -- cgit v1.2.3-70-g09d2 From 380663c7e9a52e37692946fce35ca50888233752 Mon Sep 17 00:00:00 2001 From: Abdellah El Morabit Date: Sat, 15 Nov 2025 23:17:36 +0100 Subject: feature: boilerplate FPU boilerplate classes for stressing the FPU, will be extended in the future, still discovering, what does what and what stresses what --- .../nsrddyn/cpu/FPU/CholeskyDecomposition.scala | 28 ++++++++++++++++++++++ src/main/scala/com/nsrddyn/cpu/FPU/FPU.scala | 6 +++++ src/main/scala/com/nsrddyn/cpu/FPU/Matrix.scala | 5 ++++ 3 files changed, 39 insertions(+) create mode 100644 src/main/scala/com/nsrddyn/cpu/FPU/CholeskyDecomposition.scala create mode 100644 src/main/scala/com/nsrddyn/cpu/FPU/FPU.scala create mode 100644 src/main/scala/com/nsrddyn/cpu/FPU/Matrix.scala (limited to 'src/main/scala/com/nsrddyn') diff --git a/src/main/scala/com/nsrddyn/cpu/FPU/CholeskyDecomposition.scala b/src/main/scala/com/nsrddyn/cpu/FPU/CholeskyDecomposition.scala new file mode 100644 index 0000000..58d1b7f --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/FPU/CholeskyDecomposition.scala @@ -0,0 +1,28 @@ +package com.nsrddyn + + +class CholeskyDecomposition { + + /* + * Floating point operation to stress the cpu + * Calculate the number of KFLOPS / FLOPS + * implementation of the Cholesky decomposition + * More information on the Cholesky decomposition at: + * https://en.wikipedia.org/wiki/Cholesky_decomposition + * + * Linpack uses the cholesky decomposition + * https://www.netlib.org/linpack/ + * + * + */ + + def choleskyDecomposition(n: Int): Unit = { + + for (w <- 0 to n) { + + + } + } + + +} diff --git a/src/main/scala/com/nsrddyn/cpu/FPU/FPU.scala b/src/main/scala/com/nsrddyn/cpu/FPU/FPU.scala new file mode 100644 index 0000000..de63b9c --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/FPU/FPU.scala @@ -0,0 +1,6 @@ +package com.nsrddyn + + +class FPU { + +} diff --git a/src/main/scala/com/nsrddyn/cpu/FPU/Matrix.scala b/src/main/scala/com/nsrddyn/cpu/FPU/Matrix.scala new file mode 100644 index 0000000..2ae79b6 --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/FPU/Matrix.scala @@ -0,0 +1,5 @@ +package com.nsrddyn + +class Matrix { + +} -- cgit v1.2.3-70-g09d2 From df8cf59890c206effdfae7b058a3837979dfdc37 Mon Sep 17 00:00:00 2001 From: Abdellah El Morabit Date: Sat, 15 Nov 2025 23:18:16 +0100 Subject: chose: refactor and cleanup of main files --- .gitignore | 2 ++ ALU | 6 ++++++ build.sbt | 1 + src/main/scala/com/nsrddyn/Main.scala | 10 ++++++++++ src/main/scala/com/nsrddyn/cpu/Cpu.scala | 12 ++++++++++++ src/main/scala/com/nsrddyn/torque/Main.scala | 5 ----- 6 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 ALU create mode 100644 src/main/scala/com/nsrddyn/Main.scala create mode 100644 src/main/scala/com/nsrddyn/cpu/Cpu.scala delete mode 100644 src/main/scala/com/nsrddyn/torque/Main.scala (limited to 'src/main/scala/com/nsrddyn') diff --git a/.gitignore b/.gitignore index a30d514..92e6ccb 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,8 @@ target/ project/target project/project/ +.bloop/ +.metals/ # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* diff --git a/ALU b/ALU new file mode 100644 index 0000000..f74c1d5 --- /dev/null +++ b/ALU @@ -0,0 +1,6 @@ +package com.nsrddyn.torque.cpu + + +class ALU() extends Cpu() { + +} diff --git a/build.sbt b/build.sbt index 98b9400..7611d59 100644 --- a/build.sbt +++ b/build.sbt @@ -3,3 +3,4 @@ version := "1.0" name := "torque" organization := "com.nsrddyn" +libraryDependencies += "dev.zio" %% "zio" % "2.1.22" diff --git a/src/main/scala/com/nsrddyn/Main.scala b/src/main/scala/com/nsrddyn/Main.scala new file mode 100644 index 0000000..8d5a90c --- /dev/null +++ b/src/main/scala/com/nsrddyn/Main.scala @@ -0,0 +1,10 @@ +package com.nsrddyn + + +object Torque { + + def main(args: Array[String]): Unit = { + println("--- TORQUE STRESS TESTING UTILITY ---") + } +} + diff --git a/src/main/scala/com/nsrddyn/cpu/Cpu.scala b/src/main/scala/com/nsrddyn/cpu/Cpu.scala new file mode 100644 index 0000000..46f1b10 --- /dev/null +++ b/src/main/scala/com/nsrddyn/cpu/Cpu.scala @@ -0,0 +1,12 @@ +package com.nsrddyn + +/* + * cpu object, only one instance of an object needed + */ + +object Cpu { + + val name = "" + + +} diff --git a/src/main/scala/com/nsrddyn/torque/Main.scala b/src/main/scala/com/nsrddyn/torque/Main.scala deleted file mode 100644 index 2eb300c..0000000 --- a/src/main/scala/com/nsrddyn/torque/Main.scala +++ /dev/null @@ -1,5 +0,0 @@ -package com.nsrddyn - -def main(args: Array[String]) : Unit = { - println("Hello World!") -} -- cgit v1.2.3-70-g09d2