1. A computer-implemented method for managing processes in a multicore processor using process affinity graphs, the method comprising: tracking message traffic between two or more processes of the multicore processor; determining affinity scores for the processes based on the tracked message traffic; assigning processes to process affinity groups based on the affinity scores; and allocating the processes assigned to each process affinity group to one or more processor cores of the multicore processor.