Citat:
Ursprungligen inskrivet av maDa
Tänk er rent teoretiskt "BeOS 2006" på en IBM 8-core Cell-PPC
multimediaprestandan hade ju varit grotesk
Du skulle få *bra* resultat mycket *snabbare och enklare* genom att porta BeOS till Sun's Niagara eller kommande uppföljaren, eftersom den är symmetrisk. (Lite förenklat kan man säga att det är som en SMP-burk fast alla processorerna sitter i samma chip. Och BeOS gjordes för SMP-burkar. Se www.BeBox.nu) Alla kärnorna är likadana, kan köra samma kod, och ett program kan lätt utföras på vilken av kärnorna som helst (eller flera trådar på olika kärnor), och ett program kan lätt schemaläggas på vilken ledig kärna som helst. På Cell blir det klurigare, eftersom huvudkärnan och extrakärnorna är rejält olika varandra, både i vilken kod dom kan köra och hur dom kommer åt minnet.
Om du skulle börja porta BeOS (eller mer troligt, Haiku) till Cell, så är första steget att köra på Cells huvudkärna, PPE:n (the PowerPC Element). Den är okej. Kompatibel med 64-bitars PowerPC kod, så Linux och MacOS X skulle lätt kunna köra på Cell, men PPE-kärnan *ensam* lär nog inte riktigt komma upp i "G5" (PowerPC 970) -prestanda, eftersom den saknar några av G5:ans finesser, för att spara plats på chippet så att SPE:erna kan få plats.
Det är extrakärnorna, SPE:erna, som är Cells verkliga guldgruva. De har egna, separata minnen, och skyfflar kod+data via DMA, och kör separat 32-bitars maskinkod. Eftersom dom lokala minnena är relativt små så vore det säkert overkill med 64-bitars SPE:er. Det är SIMD-möjligheterna i SPE:erna som är stinget i soppan. (Altivec, MMX/SSE osv är alla former av SIMD.. dvs när en CPU kan köra samma operation på flera data i ett steg.. perfekt för audio/video kod och många typer av beräkningar.)
Cell liknar inte de andra vanliga multicorechippen (Intel's Core Duo, AMD' X2, m fl), eftersom den inte är symmetrisk. Vilket betyder att oavsett vilket operativsystem du tar, så måste det anpassas rejält för att kunna dra nytta av Cell's extrakärnor, SPE:erna. Så, ja. Om BeOS anpassas till Cell så skulle det ha grym prestanda. Vilket operativsystem som helst som verkligen anpassas för att dra nytta av Cell skulle få grym prestanda. Linux har fått ett visst stöd för SPE:erna, via "SPUFS", men det är ingen jättesnygg lösning. För stelt. Den frigör inte SPE:ernas fulla kapacitet att samarbeta, om jag förstått saken rätt.
Känslan av prestanda/responsivitet/körglädje i BeOS är unik, men BeOS har ingen magisk "multimediaprestanda" (hårdvaran utgör alltid ett övre tak för vad som går/inte går.. Den mesta tiden som ett program kör disponeras helt av programmet, och då är det processorn/minnet som är flaskhalsen, inte operativsystemet), förutom att det hade väldigt låga latencies (fördröjning) jämfört med vad MacOS, Windows och Linux hade på den tiden då Be jobbade på att få in BeOS i audio och videobranscherna. Låga och pålitliga latencies är viktigt för hårddiskinspelning, sequencers, video i broadcast-sammanhang och sånt.
Men det var roliga demos.. En massa videor spelandes samtidigt och på snurrande kubar och bläddrande bokblad. Mitten av 90-talet var inte så dumt.
Hursomhelst. Jag gillar BeOS. Har kört det som mitt huvudoperativ sen första PC-versionen släpptes, och Haiku (vårt klonprojekt) har bra fart på utvecklingen, så snart ska jag byta upp mej, hoppas jag. Linux är bra på mycket, liksom MacOS X och Windows, men bara BeOS har den rätta "känslan". )
Besök gärna mina sidor om BeOS och Haiku på www.kirilla.com
Mvh,
Jonas Sundström.