forked from rarias/bscpkgs
		
	
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   super
 | |
| , self
 | |
| , bsc
 | |
| , garlic
 | |
| , callPackage
 | |
| }:
 | |
| 
 | |
| {
 | |
|   nbody = rec {
 | |
|     granularity = callPackage ./nbody/granularity.nix { };
 | |
|     ss = callPackage ./nbody/ss.nix { };
 | |
|     numa = callPackage ./nbody/numa.nix { };
 | |
|   };
 | |
| 
 | |
|   saiph = {
 | |
|     granularity = callPackage ./saiph/granularity.nix { };
 | |
|     ss = callPackage ./saiph/ss.nix { };
 | |
|   };
 | |
| 
 | |
|   creams = rec {
 | |
|     ss = callPackage ./creams/ss.nix { };
 | |
|     granularity = callPackage ./creams/granularity.nix { };
 | |
|     size = callPackage ./creams/size.nix { };
 | |
|     granularity16 = callPackage ./creams/granularity16.nix { };
 | |
| 
 | |
|     # These experiments are the extended versions of the previous
 | |
|     # ones. We split them so we can keep a reasonable execution time
 | |
|     big.granularity = granularity.override { enableExtended = true; };
 | |
|     big.ss = granularity.override { enableExtended = true; };
 | |
|   };
 | |
| 
 | |
|   hpcg = rec {
 | |
|     granularity = callPackage ./hpcg/granularity.nix { };
 | |
|     ss = callPackage ./hpcg/scaling.nix { };
 | |
|     ws = ss.override { enableStrong=false; };
 | |
|     size = callPackage ./hpcg/size.nix { };
 | |
| 
 | |
|     big.ss = ss.override { enableExtended = true; };
 | |
|   };
 | |
| 
 | |
|   heat = rec {
 | |
|     granularity = callPackage ./heat/granularity.nix { };
 | |
|     cache = granularity.override { enablePerf = true; };
 | |
|     ctf = granularity.override { enableCTF = true; };
 | |
|   };
 | |
| 
 | |
|   bigsort = rec {
 | |
|     genseq = callPackage ./bigsort/genseq.nix {
 | |
|       n = toString (1024 * 1024 * 1024 / 8); # 1 GB input size
 | |
|       dram = toString (1024 * 1024 * 1024); # 1 GB chunk
 | |
|     };
 | |
| 
 | |
|     shuffle = callPackage ./bigsort/shuffle.nix {
 | |
|       inputTre = genseq;
 | |
|       n = toString (1024 * 1024 * 1024 / 8); # 1 GB input size
 | |
|       dram = toString (1024 * 1024 * 1024); # 1 GB chunk
 | |
|       inherit (bsc.garlic.pp) resultFromTrebuchet;
 | |
|     };
 | |
| 
 | |
|     sort = callPackage ./bigsort/sort.nix {
 | |
|       inputTre = shuffle;
 | |
|       inherit (bsc.garlic.pp) resultFromTrebuchet;
 | |
|       removeOutput = false;
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   slurm = {
 | |
|     cpu = callPackage ./slurm/cpu.nix { };
 | |
|     sigsegv = callPackage ./slurm/sigsegv.nix { };
 | |
|     exit1 = callPackage ./slurm/exit1.nix { };
 | |
|   };
 | |
| 
 | |
|   lulesh = {
 | |
|     test = callPackage ./lulesh/test.nix { };
 | |
|   };
 | |
| 
 | |
|   fwi = rec {
 | |
|     granularity = callPackage ./fwi/granularity.nix { };
 | |
|     ss = callPackage ./fwi/ss.nix { };
 | |
|     reuse = callPackage ./fwi/reuse.nix { };
 | |
|     io = callPackage ./fwi/io.nix { };
 | |
| 
 | |
|     # Extended experiments
 | |
|     big.io = io.override { enableExtended = true; };
 | |
|   };
 | |
| 
 | |
|   osu = rec {
 | |
|     latency = callPackage ./osu/latency.nix { };
 | |
|     latencyShm = latency.override { interNode = false; };
 | |
|     latencyMt = latency.override { enableMultithread = true; };
 | |
|     latencyMtShm = latency.override { enableMultithread = true; interNode = true; };
 | |
|     bw = callPackage ./osu/bw.nix { };
 | |
|     impi = callPackage ./osu/impi.nix { };
 | |
|     bwShm = bw.override { interNode = false; };
 | |
|     mtu = callPackage ./osu/mtu.nix { };
 | |
|     eager = callPackage ./osu/eager.nix { };
 | |
|   };
 | |
| 
 | |
|   examples = {
 | |
|     granularity = callPackage ./examples/granularity.nix { };
 | |
|   };
 | |
| 
 | |
|   cn6 = {
 | |
|     timediff = callPackage ./cn6/timediff.nix { };
 | |
|     nbody = callPackage ./cn6/nbody.nix { };
 | |
|   };
 | |
| }
 |