À l'heure actuelle, le OCaml exécution ne prend pas en charge l'exécution de multiples cœurs en parallèle, de sorte qu'un seul OCaml processus ne peut pas profiter de plusieurs cœurs. Il est peu probable que le changement directement; la direction de l'OCaml les développeurs sont plus intéressés à prendre pour augmenter le parallélisme semble être ce qui permet à plusieurs OCaml temps d'exécution pour exécuter en parallèle, dans un seul processus, ce qui permet une grande rapidité de transmission de message, mais ne permettra pas d'exécuter plusieurs threads en parallèle dans une mémoire partagée de configuration. Les principaux raccrochage est le garbage collector; il y a quelques années, l'équipe expérimentée avec un concurrent à l'GC, mais il introduit inacceptable des ralentissements dans le single-threaded cas.
Il ya un couple de projets, à savoir Functory et OCamlnet, qui fournissent le multicœur heureux parallélisme à l'aide de plusieurs procédés.
En général, les OCaml communauté tend à favoriser la transmission de message approches, ce qui peut être fait dans les limites du processus (comme OCamlnet n'), au cours d'un processus unique à mémoire partagée multithreading. Si votre programme peut être divisé en plusieurs processus (beaucoup de peut!), alors oui, vous pouvez efficacement l'utilisation de plusieurs Processeurs.