Pas vraiment, mais oui, en quelque sorte.
D'une part, c'est un non catégorique : la carte mère, dans un sens très réel, est l'ordinateur. C'est la chose qui lie le processeur, la mémoire, les lecteurs, l'entrée, la sortie, tout ensemble.
Ce n'est pas un composant attaché à l'ordinateur, c'est l'ordinateur auquel les composants sont attachés.
D'autre part, il'n'y a aucune raison pour que vous ne puissiez pas'avoir deux cartes mères dans un seul boîtier, sauf, bien sûr, l'espace, l'alimentation et la dissipation de chaleur, le bruit, la poussière.... il'n'y a aucune raison théorique pour laquelle vous ne pourriez'pas avoir deux cartes mères dans un seul boîtier.
Cette configuration permet d'imbriquer les deux ordinateurs plus profondément que ne le ferait le fait de les avoir dans des boîtiers séparés, transformant un ordinateur en un pseudo-composant de l'autre (ou un composant à part entière, nous y reviendrons dans une minute), soit pour des tâches générales comme une puissance de traitement supplémentaire, soit pour des tâches spécialisées.
En fait, une façon dont les cartes graphiques, les cartes son et autres extensions peuvent être comprises est effectivement comme des cartes mères supplémentaires, communiquant avec l'ordinateur proprement dit via quelque chose qui'est quelque part entre une connexion réseau et un bus embarqué, se déchargeant de tâches spécifiques afin de libérer de la capacité de calcul pour la carte mère principale.
C'est aussi la différence entre une puce graphique intégrée embarquée et une carte graphique.
Maintenant, la configuration à laquelle vous faites référence, ayant deux cartes mères ostensiblement identiques dans un seul ordinateur est l'une des choses que l'on appelle un superordinateur, et des logiciels existent pour piloter de telles choses, bien que les ordinateurs en grappe connectés par réseau soit beaucoup plus courants, en raison de l'évolutivité, de la fiabilité et de la modularité.
Notez, cependant, que même si vous aviez une carte mère supplémentaire, cela ne signifierait pas nécessairement une amélioration des performances.
Il y a deux façons de faire en sorte que quelque chose se passe rapidement dans un ordinateur. Une façon est de coller la tâche sur un processeur rapide et de l'alimenter aussi rapidement que possible, et de nombreuses tâches sont soit par leur nature, soit en raison d'une conception bâclée ou paresseuse, de ce type.
L'autre façon est de décomposer la tâche en un ensemble d'opérations indépendantes et de les faire toutes en même temps. Beaucoup de tâches peuvent être faites de cette façon, et pour certaines, c'est plus naturel que d'autres, mais souvent, en raison de la paresse, du laisser-aller, ou d'un simple compromis dans le domaine du coût-bénéfice, les tâches ne sont'pas faites ainsi.
Disons'par exemple que vous'corrigez l'orthographe et la grammaire d'un document, phrase par phrase. Vous pourriez soit dynamiter le document dans son ensemble, soit le diviser en une série de phrases que vous alimentez dans un planificateur qui transmet les phrases individuelles à un pool de vérificateurs d'orthographe disponibles fonctionnant sur différents processeurs, pour ensuite être réassemblés une fois que les phrases individuelles sont vérifiées.
Si j'étais un parieur, je'mettrais de l'argent sur presque exactement zéro vérificateur d'orthographe parallélisant leur tâche, parce que l'overhead n'en vaudrait généralement pas la peine. (Bien que, si vous'vérifiez l'orthographe d'immenses volumes de texte dans une variété de langues, cela pourrait effectivement en valoir la peine.)
La plupart des tâches informatiques courantes tombent du même côté de ce compromis : alors que la tâche pourrait être théoriquement parallélisable, dans la pratique, elle'est considérée comme ne valant pas l'effort ou les maux de tête (même si, dans de nombreux cas, cette décision est prise par les développeurs, parfois sans une réelle compréhension des besoins des utilisateurs finaux).
So what does that leave us with?
Philosophical considerations aside, the answer works out to either a 'Yeah, kind of.' or a 'No, but...', but unless you are heavily engaged in tasks that are
- Parallelizable and
- Actually parallelized
the most straightforward answer is 無.
It is either impossible, or possible but pointless.
Get two computers and a LAN cable instead, and make one a headless workhorse. It'll save you many a headache.