La programmation sur multi-core pose un très gros problème : notre cerveau n´est pas capable de penser deux choses à la fois, contrairement à ce que l´on peut croire. Tout ce que nous faisons, pensons, est séquencé, c´est-à-dire exécuté par séquences successives.
La difficulté, c´est de définir de quelle façon un programme va tourner sur deux cores en même temps, quels seront les priorités à donner, comment balancer deux calculs en même temps, en récupérer les données et les exploiter derrière.
Par contre, pour faire tourner deux programmes en même temps, pas de souci. Mais un programme sur deux cores, ça reste encore délicat.