This is a Julia implementation of the Patatrack benchmark for CMS pixel reconstruction.
- Julia 1.11.5 or later
- Required Julia packages (installed automatically)
- Data files (downloaded automatically)
-
Install Julia:
- Download from Julia's official website
- Or use Juliaup:
curl -fsSL https://install.julialang.org | sh - Set Julia 1.11.5 as default:
juliaup add 1.11.5 && juliaup default 1.11.5
-
Clone the repository:
git clone https://github.com/Maya-Ali0/CMS-Julia.git cd CMS-Julia -
Setup the environment:
make julia-serial
This will:
- Install required Julia packages
- Download and extract the necessary data files
Run the code from the CMS-Julia directory:
./julia-serial.shUsage: ./julia-serial.sh [--numberOfStreams NS] [--warmupEvents WE] [--maxEvents ME] [--runForMinutes RM]
[--data PATH] [--validation] [--histogram] [--empty]
Process 100 events with validation:
./julia-serial.sh --maxEvents 100 --validationRun for 5 minutes with 8 streams:
./julia-serial.sh --runForMinutes 5 --numberOfStreams 8-
Permission denied when running ./julia-serial.sh:
chmod +x julia-serial.sh ./julia-serial.sh
-
Package installation fails:
julia --project=src/julia-serial -e 'using Pkg; Pkg.instantiate()' -
Precompilation gets stuck:
rm -rf ~/.julia/compiled/ julia --project=src/julia-serial -e 'using Pkg; Pkg.precompile()'
-
Data download fails:
make clean make download_raw
To create a standalone application:
cd src/julia-serial
julia --project=. compile_app.jlThe executable will be created in src/julia-serial/compile/bin/julia_main.exe.