I would like to know how Linux decides which CPU core runs every process. I imagine there must be some kind of algorithm or even it is randomized.
I am trying to create an artificial intelligence that improves CPU efficiency and choosing which core runs each process may be interesting but I don't know if I can improve the way Linux handles it.