Prestanda på Universal Binary-program

Tråden skapades och har fått 8 svar. Det senaste inlägget skrevs .
1

Det här svaret fick jag på 99Musik på en fråga varför inte Arturia har gjort sin senaste softsynth i UB-version:

"Enligt en ganska så säker källa så är just prestanda ett klart märkbart problem (på UB-program; min kommentar). Teoretiskt sett så fungerar UB jättebra.. men tydligen inte riktigt i praktiken idag. Det beror kanske delvis på att apple är lite efter med kompilatoruppdateringarna."

Kan det stämma, att mer avancerade UB-program inte presterar så bra som man kan tro av hur rapp datorn känns när man startar ett UB-program?

  • Medlem
  • Stockholm
  • 2006-03-25 13:13

Jag har hört liknande saker….Apple satsa på kompabilitet framför prestanda, vilket jag stödjer till viss del. Utvecklingen av UB-program lär säkert gå framåt likt utvecklingen av OSX.

Hoppas verkligen att man satsar på prestanda före kompatibilitet när Intel-macarna blivit vanliga. Resurser för riktigt vassa datorer finns definitivt. Min iMac 2GHz känns väldigt pigg, klart piggare än en iMac G5, så förutsättningar lär ju finnas. Så här långt känns bytet till Intel helt rätt. Tror att Core Duo är en bättre processor än G5.

Om ett programs prestanda skulle visa sig klart bättre som icke universellt så borde det ju gå att kompilera i två versioner, en för PowerPC och en för Intel.

  • Medlem
  • Stockholm
  • 2006-03-25 16:56

Fördelen med Universal är att man inte ska behöva tänka på PPC eller Intel, det ska bara funka. Om det ger en performance-hit tror jag Apple är villiga att ta den. Dock tror jag Apple's intel-kompilator kommer bli bättre o bättre med tiden. PPC:n har ju det så.

  • Medlem
  • 2006-03-25 17:49
Ursprungligen av Erik.dv:

Fördelen med Universal är att man inte ska behöva tänka på PPC eller Intel, det ska bara funka. Om det ger en performance-hit tror jag Apple är villiga att ta den. Dock tror jag Apple's intel-kompilator kommer bli bättre o bättre med tiden. PPC:n har ju det så.

-jätteedit- blev lite rörigt det här.

Använder man Xcode för att kompilera sina program så används GCC 4.x för både PowerPC och x86 (intel). GCC är mycket bättre optimerat för x86 än för PowerPC pga av att x86-användarbasen är så mycket större. GCC används för många olika UNIX-plattformar, exempelvis Linux och olika BSD-varianter. Den är Open Source och har utvecklats nästan helt utanför Apple.

Det finns dock andra kompilatorer för PowerPC än GCC, exempelvis den i Metrowerks CodeWarrior. Exempelvis Adobe, Microsoft och Propellerheads Software (Reason) använder CodeWarriors kompilator som är (kan vara) snabbare än GCC/PowerPC.

Om de då skulle skapa Universal Binarys skulle alltså prestandan på PowerPC minska eftersom en annan (sämre) kompilator än CodeWarrior används. Ett program som alltid kompilerats med GCC (t.ex. MacOS X i sig självt) blir dock inte långsammare bara för att det är en Universal Binary.

Här en länk som förklarar varför Propellerheads Software valde att göra två olika versioner av Reason (en för PPC och en för x86) http://www.dmnnewswire.com/articles/viewarticle.jsp?id=38354

Slutsatsen blir då att i vissa fall är det bättre att göra separata versioner av programmen eftersom man kan använda den bästa kompilatorn för varje arkitektur.

Senast redigerat 2006-03-25 18:34
  • Medlem
  • Uppsala
  • 2006-03-26 10:01
Ursprungligen av Ola Lidén:

Slutsatsen blir då att i vissa fall är det bättre att göra separata versioner av programmen eftersom man kan använda den bästa kompilatorn för varje arkitektur.

Yes, Ola, helt sant. Men dessutom finns ju också bättre kompilatorer än GCC för x86. Har inte Intel en egen C-kompilator som ska vara ruskigt vass?

  • Medlem
  • 2006-03-26 12:42
Ursprungligen av mratin:

Yes, Ola, helt sant. Men dessutom finns ju också bättre kompilatorer än GCC för x86. Har inte Intel en egen C-kompilator som ska vara ruskigt vass?

Den stödjer inte ObjectiveC, alltså inte användbar för program som använder Cocoa-API:t. Dessutom finns den bara i beta för MacOS X än så länge, vad jag vet.

Inte alls vetenskapligt eller generaliserbart, men var inte ordet från NAMM att UB-portningen av Logic Pro var ruskigt snabb? Det bådar gott för mig i vart fall.

1
Bevaka tråden