Cost: fewer components (with associated failure modes/rates). Reliability: Cut out socket-related failure modes (admittedly small factor, but...) You test memory before assembly, don't you? Performance: See above; speed not sole performance criterion. Compact design: Exactly; packaging is as much art as science. Cons: You give up easy upgrade and trade off repairability, which is partly offset by increased reliability. It's a juggling game, always has been.