billiard multiprocessing