10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-06-02 03:15:19 +02:00
QCaml/common/lib/qcaml.ml

33 lines
708 B
OCaml

(* | ~root~ | Path to the QCaml source directory |
* | ~name~ | ~"QCaml"~ |
* | ~num_domains~ | Number of threads in parallel computations | *)
(* [[file:~/QCaml/common/qcaml.org::*QCaml][QCaml:2]] *)
let name = "QCaml"
let root =
let rec chop = function
| [] -> []
| x :: _ as l when x = name -> l
| _ :: rest -> chop rest
in
String.split_on_char Filename.dir_sep.[0] (Sys.getcwd ())
|> List.rev
|> chop
|> List.rev
|> String.concat Filename.dir_sep
let num_domains =
let result =
try
Unix.getenv "OMP_NUM_THREADS"
|> int_of_string
with Not_found -> 1
in
result - 1
(* QCaml:2 ends here *)