Nathalie Furmento 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
..
black_scholes 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
includes 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
mandelbrot 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
mult 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
nbody 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
Makefile.mk 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
README 1988c30cf6 README %!s(int64=6) %!d(string=hai) anos
cpu_cuda_mult.jl 1a842beecc julia wrapper %!s(int64=6) %!d(string=hai) anos
cpu_mult.c 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
gpu_mult.cu 6a16f8370f update copyright holders %!s(int64=5) %!d(string=hai) anos
mult.c f7abbfa6fc update copyright %!s(int64=6) %!d(string=hai) anos
mult_def.jl b971ff887f compiler for loop, comment %!s(int64=6) %!d(string=hai) anos
mult_extern.jl 1a842beecc julia wrapper %!s(int64=6) %!d(string=hai) anos
mult_generated.jl 1a842beecc julia wrapper %!s(int64=6) %!d(string=hai) anos

README



(Rename Makefile.mk to Makefile)

Command to compile tests and libjlstarpu_c_wrapper.co file, needed in current directory to launch starPU from Julia, and also run cpu_cuda_mult.jl, a Julia file which uses C/Cuda compiler in order to generate kernels from Julia code :

make



Then you can run julia matrix bloc multiplication tests. These tests run StarPU multiplication aglorithm on squared matrix of several sizes, and displays, for each size of matrix, the average execution time (format : "width ; time"):

"julia test_file start_dim step_dim stop_dim nb_tests nslicesx nslicesy"

- test_file : one of the julia files used for test. Can be
- "mult_extern.jl" to make Julia code run, but using C and Cuda written Kernel.
- "mult_generated.jl" to make Julia code run, with compiled C and Cuda kernels from Julia code

- start_dim, step_dim, stop_dim : The test will run with squared matrices with a side length tarting ti start_dim, and increasing of step_dim until reaching stop_dim.

- nb_tests : number of tests for each matrix size. The median value obtained is displayed.

- nslicesx, nslicesy : Matrix will be cut in nclicesx * nscliesy slices, one StarPU task per slice will run in each test.

Example : julia mult_generated.jl 64 64 256 10 4 4

You can define variable sin environnemnt to make starPu use proper cheduling polycy.
Example : STARPU_SCHED=dmda STARPU_CALIBRATE=1 julia mult_generated.jl 64 64 256 10 4 4



You can run the same test with same arguments, but with the C/Cuda version:

STARPU_SCHED=dmda STARPU_CALIBRATE=1 build/mult 64 64 256 10 4 4