Forum: Netzwelt
Macbook Air: Das taugt Apples Rechen-Brett

Es scheint, als würde Apple es sich leicht machen: Nur wenig mehr als ein Kilo wiegt das neue Macbook Air, sieht auf dem Datenblatt wie ein untermotorisierter Mittelklasse-Mobilrechner aus. Doch Zahlen sind nicht alles, wie unser Alltagstest beweist, der manche Überraschung ergab.

Seite 5 von 15
marrrrtin 27.10.2010, 17:14
40. Minimaler Befehlssatz nötig?

Zitat von GM64
Fazit ist aber, dass durch die ökonomischen Zwänge zu einem einheitlichen Binärcode das Potential der Prozessoren nicht genutzt wird.
Nur ein kleines Beispiel aus dem Bereich des wissenschaftlichen Rechnens: Wichtige mathematische Funktionen auf Vektoren und Matrizen sind im sog. BLAS zusammengefasst. Keiner schreibt heutzutage noch Matrix-Matrix-Multiplikationen als drei verschachtelte Schleifen in C/C++ bei mehr als 50 Zeilen/Spalten (bzw. das sollte keiner mehr tun), weil es hochoptimierte Pakete gibt. Wenn ich z.B. AMDs ACML (ein solches Paket) bei mir verwende, wird zuallererst eine Funktion mit dem Namen IdentifyCPUTYPE aufgerufen, welche den x86-Assemblerbefehl cpuid enthält. Damit weiß das Paket sofort, dass ich einen Core2Duo Baujahr 2006 habe, und kann einen optimierten Teilpfad in der Bibliothek einschlagen.

Weil sich viele performancekritische Teile von Betriebssystemen, Grafikkarten, usw. als größere Blöcke schreiben lassen (eben wie das Produkt von zwei Matrizen), das sind also Millionen, wenn nicht Milliarden Instruktionen an die CPU, kann man so effizient zwischen verschiedenen für verschiedene Architekturen optimierten Funktionen immer die passende wählen. Und auch mit dem basic x86_64-Befehlssatz kann man erstaunlich effizient sein, solange man nicht auf spezielle Befehlserweiterungen in höheren SSE-Stufen angewiesen ist. Das läuft dann immerhin auf allen neueren AMD und Intel CPUs (ab 2003 oder so).

Beitrag melden Antworten / Zitieren
GM64 27.10.2010, 17:14
41. ist ganz einfach

Zitat von No.1
Sie meinen also, Microsoft kompiliert den Windows-Code für den kleinsten gemeinsamen Nenner aller unterstützten CPUs, während Apple quasi die Fähigkeiten jeder CPU seziert und den MacOSX-Code passgenau für jede CPU separat erzeugt?
Sie brauchen sie nicht sezieren, sie müssen nur im Intel Compiler den Zielprozessor angeben und schon passt es. Man wäre dumm den nicht zu kaufen, schließlich haben die den Prozessor erfunden.

Wenn ich ein Produkt auf den Markt bringe, dann ist es bei einer guten Firma so, dass man reproduzieren kann welche Software und welcher Source Code da darauf läuft.

Also wird da bestimmt der Code täglich zentral Compiliert.
Und die Entwickler holen sich dann den Code den sie zum arbeiten brauchen. Wobei sie selber auch immer an diese Stelle abgeben.

Das ist immer so. Es wird immer irgendwo die gesamte Software täglich erstellt. Und getestet. Irgendwann heißt es dann Version. Aber es gibt auch noch Untereinheiten.
Eigentlich brauch man ja nur die Endversion für den Zielprozessor Compilieren, wenn man ausliefert. Das ist nicht von den Entwicklern abhängig.
Das ist auch kein Aufwand.
Wenn ich einen Rechner ausliefere, dann wird für ihn Compiliert. Hat mit Fehlersuche und dem Rest der Entwicklung nichts zu tun. Man sollte aber immer testen, sicher ist sicher. Nicht ob der Compiler geht, aber ob der andere Compiler aber etwas anderes verstanden hat.


Bei gentoo kann man auch immer den Code neu erstellen. Und bei manchen Linux Betriebssystemen kann man auch das Betriebssystem für die spezielle Prozessor Version herunterladen.

Selbst kompilierte Betriebssystemkernel sind nichts Neues.
Macht eigentlich jeder, der ein wenig was von seinem Rechner hält. Würden die bei Apple es nicht machen, wäre es sehr unprofessionell. Vor allem Hacker bauen ihren Kern immer gerne selber. "Seht ich bin so toll, ich habe alles im Griff."

Beitrag melden Antworten / Zitieren
marrrrtin 27.10.2010, 17:23
42. 64 bit?

Zitat von GM64
Ich bin auch kein Fan einer 64 Bit Architektur, weil man 3+4 auf einem 32 Bit Rechner schneller rechnen kann.
Warum sollte 64 bit langsamer sein? Natürlich sind Adressen doppelt so groß (eben 64 bit statt 32 bit) und damit auch der kompilierte Code, in C/C++-Sprache wären das Zeiger. Aber die Laufzeit vieler Programme wird nicht im Auslesen von Zeigern verbraten, sondern in Integer-Operationen (sortieren, suchen, addieren) oder Gleitkomma-Operationen (Bildbearbeitung, das meiste mit Grafik, wissenschaftliches Rechnen), bei welchen die Systemarchitektur eigentlich keine Rolle spielt, sondern, ob die gleichen Befehle, die aber auf unterschiedliche Daten angewendet werden, evtl. parallelisiert werden können wie bei SSE. Siehe auch Wikipedia zu 64 bit.

Wenn Sie sich für Hardware interessieren, wissen Sie vielleicht, dass es bei modernen CPUs einen L1 Cache für Daten und einen für Instruktionen gibt. Eben die Instruktionen können bei 64 bit etwas mehr sein (müssen es aber auch nicht), die Daten sind in aller Regel genauso viele. Und meist geht es um Daten bei der Performance...

Beitrag melden Antworten / Zitieren
rgom 27.10.2010, 17:26
43. alles klar.

Zitat von GM64
ich habe mir mal den Sourcecode vom GCC angeschaut. So ein Verhau. Der verwendet nicht einmal Coding Guidelines. Das war allerdings 2005. Da hieß eine Variable Paranoia. Das kann vielleicht den Zustand des Programmierers beschreiben, ist aber für eine Variable tödlich. Was soll die den machen? Was nutzt mir ein Sourcecode der in Spagetti Technik geschrieben ist? Der entspricht ja überhaupt keinem Qualitätsstandart. Für den IPad muss ein Anderer verwendet werden, weil er einen anderen Zielprozessor hat. Den müssen die Prozessorhersteller geliefert haben. Mindestens das Backend. Auch ist der nicht so umfangreich. Viele Befehle gibt es in einer Mobil Umgebung nicht.
Auf diesen Schwachsinn gehe ich jetzt wirklich nicht mehr ein. Backend, alles klar? Entweder Sie wollen bewußt das Forum verarschen, oder - schlimmer - Sie glauben tatsächlich, daß Sie eine Ahnung von dem haben, worüber Sie hier schreiben.

Beitrag melden Antworten / Zitieren
No.1 27.10.2010, 17:30
44. Ist offenbar nicht ganz einfach

Meine Frage, ob Sie meinen, dass Microsoft den Windows-Code für den kleinsten gemeinsamen Nenner aller unterstützten CPUs kompiliert, während Apple den MacOSX-Code passgenau für jede CPU separat erzeugt, haben Sie damit nicht beantwortet.

Beitrag melden Antworten / Zitieren
GM64 27.10.2010, 17:32
45. Und sie machen sich zum Herrgott

Zitat von wanderprediger
Selten so ein riesen Schwachsinn gelesen! Ich sage dazu. Wer PID verbieten will ist ein Anitchrist/Menschenfeind. Er labt sich an dem Leid und der Qual der Menschen.
Sie wollen entscheiden was ein Leid und eine Qual für einen anderen ist?
Mir ist eine Frau bekannt, die darunter leidet, dass ihr Ehemann ihr keinen Mercedes schenken kann. Wie wollen sie ermitteln, ob das Kind diesen Wunsch hegt, und wollten Sie sie deshalb abtreiben?
Was wenn sie doch einen Manager abbekommt, der ihr das leisten kann?

Was ist Leid? Und wie wollen Sie feststellen wie sehr jemand darunter leidet?
Da war neulich ein Spiegel Artikel, der hat von Leuten geschrieben die sich freiwillig ein Bein amputieren lassen.

Das Leid hängt doch wesentlich davon ab, wie man in der Lage ist damit umzugehen.

Ein sehr kluges Gebet lautet, "Herr erspare mir nicht das Leid, sondern lass es mich ertragen lernen."

Jetzt muss ich aber noch etwas für mich programmieren. Ich habe schon seit Wochen nichts mehr gemacht. Es zuckt in meinen Fingern.


Schönen Tag noch.

Beitrag melden Antworten / Zitieren
marrrrtin 27.10.2010, 17:41
46. Stichwort: Bibliotheken

Zitat von GM64
Sie brauchen sie nicht sezieren, sie müssen nur im Intel Compiler den Zielprozessor angeben und schon passt es. Man wäre dumm den nicht zu kaufen, schließlich haben die den Prozessor erfunden.
Noch mal als Ergänzung zu meinem ersten Post: Nicht aller Code wird direkt in C (oder einer anderen High-Level-Programmiersprache) geschrieben, sodass die Compiler-Flags allein nicht alles sind. Oft greift man auf Bibliotheken zurück, also Sammlungen von Funktionen, die häufig benutzt werden. Die sind dann optimiert und teilweise in Assembler geschrieben (und, wie ich oben schrieb, enthalten diese verschiedene Codes für verschiedene Prozessoren). Im C-Code taucht dann nur noch der Aufruf von Funktionen auf. Grafikkartentreiber sind im Grunde dasselbe. Da werden einfach Funktionen aufgerufen.

Versuchen Sie mal, die Funktion memset in C zu schreiben (setzt alle Werte in einem Array auf einen String-Wert). Auch mit dem Intel-Compiler zum Kompilieren der Schleife

for (i=0; i<length; ++i) val[i] = 'a';

sind Sie da bis zu einem Faktor 2 langsamer als mit memset (bei Linux verwende ich -xhost -O3). Obwohl memset für viele Prozessoren funktioniert.

Und übrigens: Intel weiß zwar früher, wie die eigenen CPUs funktionieren, und kann evtl. den Compiler eher drauf einstellen. Aber beim Release einer CPU werden auch die meisten performancerelevanten Eigenschaften wie Anzahl Operationen pro Takt, Speicherbandbreite, Cachegrößen publik (nur branch predictors, prefetcher/Speichercontroller und Energiemanagement sind nicht allgemein bekannt, aber so was kann kein Compiler benutzen, glaube ich). Ich habe (im wissenschaftlichen Rechnen) einige Male den GNU Compiler mit dem Intel Compiler verglichen. Die geben sich unter Linux nicht viel. Auch nicht auf neuen Intel-CPUs. Tendenziell ist bei meinen Programmen sogar GCC schneller, weil ich eben damit entwickle und somit in die Richtung gebiast bin.

Beitrag melden Antworten / Zitieren
cafe 27.10.2010, 17:59
47. MBA - egal was ihr sagt, ich kaufs mir trotzdem :-)

Zu allererst: tolle Diskussion, teilweise viel fach-chinesisch..
Zweitens: ich bin zu faul auf meine Rechtschreibung zu achten, ich schreib wie's mir gefällt, dürft gerne nach Fehlern suchen, die hat dann die Rechtschreibprüfung des Chrome übersehen :-)

Die Frage nach dem Preis ist doch bei Apple komplett irrelevant - Steve Jobs hat es geschafft, dass sich egal welches Produkt inzwischen wie warme Semmeln verkauft (gibts da keinen besseren Ausdruck für?). Die iPods sind mit Sicherheit nicht die besten MP3 Player -egal - iPhones nicht unbedingt gute Handys - auch egal - beides KULT!! Da geht's nur ums haben und zeigen. itunes ist eine grässliche Software, stört aber auch keinen.

Für mich hat sich mit dem Launch des neuen Airbooks im 11" Format endlich das Thema iPad erledigt. Das kostet in bester, größter, tollster Ausführung 799 EUR. Geht's noch?!?! Hat 9.7", den IQ eines iPods und 64 GB Flash-Speicher aber keine Flash Unterstützung im Browser :-( Und die Leute kaufen es trotzdem. Und wo wir grad bei Preise sind: in den USA sind Apple Produkte alle ein bissi billiger.. Kompromiss Preis zu Lasten englischer Tastatur?

Ich bin ein einfacher Nutzer des Rechners: Internet, Email, ein wenig Office / Works Anwendungen, youtube. Fertig. Dafür habe ich gerne eine Tastatur, alternativ eine Maus (Magic Mouse). Weitere Peripherie schließe ich nicht an, außer mal ne externe Festplatte oder nen USB Stick; für alles andere habe ich noch einen Mac Mini und ne Time Capsule (bin auch schon voll der Apple-litis verfallen), das sind mein externes Laufwerk (super drive gespart), Drucker-Server, externer Speicher. Je weniger Kabel desto besser. Mach ich nur kaputt, bleib daran hängen, nerven. Cleveres Kabel: der magnetische Stromanschluss. Nicht so clever: die Grösse der Trafos..

Wegen der Größe - 11" sind genau meins, hatte vorher ein Dell E4200 mit 12" von der Firma, eigentlich bestens geeignet zum reisen, aber das hatte ne miese Batterieleistung ohne grösseren Akkupack (Aufpreis!), die SSD Festplatte ist innert eines Jahres 2x verreckt und der eSata auch (da hat Dell gleich mal das Motherboard getauscht und das zweite mal die Festplatte geschossen). Und man schaue sich den Preis an.
Eine WWAN Karte hätten sie dem MBA spendieren können, das ist für ein reines wireless Gerät sehr praktisch. Geht also ein USB Anschluss für den WWAN USB drauf.
Bei Apple begeistert mich das Mac OS X, iWorks und die anderen "Standard" Programme. Einfach, intuitiv. Und das Plug-n-play ohne "bitte legen sie die Treiber CD ein" Meldungen.
Hab Win7 noch nicht probiert, gebe ich zu, aber viel gutes gehört; die Firma hat's noch nicht ausgerollt, werds mir privat sicher nicht holen, hab ja nur Mac zuhause.

Weil's mir grad einfällt: Kensington-Schloß - das ärgste G'lump! Das kann man mit bisschen Geschick und Anleitung so leicht knacken.. http://www.youtube.com/watch?v=IIQIJpOhV4c
Ein IT Mann hat's mit ner Kugelschreiberkappe in unter einer Minute offen gehabt. Seitdem liegt's im Schrank. Alles kann einem gestohlen werden, wenn man nicht drauf aufpasst, also einfach nicht unbeobachtet rumliegen lassen..(gilt für MBAs und Navis und Handys use) :-D

Ach ja - das iPhone4 will ich auch noch..

Beitrag melden Antworten / Zitieren
rudirastlos60 27.10.2010, 18:28
48. Fast aber nur Fast :)

Zitat von rgom
Was für ein Intel Compiler? Der nicht so tolle GNU Compiler ist der Standard Compiler unter OSX (Objective C). Auch sämtliche Iphone/Ipad Applikationen sind im Normalfall mit GCC compiliert. Ich nehme an daß auch der Großteil von OSX selbst mit GCC kompiliert wurde.
http://developer.apple.com/technologies/mac/


[1]
Im Oktober 2007 hat Apple mit Mac OS X 10.5 Objective-C 2.0 ausgeliefert, eine Erweiterung von Objective-C, die „moderne Garbage Collection, Syntaxerweiterungen, Verbesserungen der Laufzeitleistung und 64-Bit-Unterstützung umfasst“.
[2]
Die GNU Laufzeitumgebung für Objective-C unterstützt diese Erweiterungen derzeit (Mai 2009, GCC 4.4) jedoch nur teilweise. Für volle Objective-C 2.0 Unterstützung wird der LLVM clang Compiler benötigt.


http://www.heise.de/newsticker/meldu...st-922888.html

http://clang.llvm.org/get_started.html


http://www.golem.de/1010/78935.html


MFG

Beitrag melden Antworten / Zitieren
jhessemaster 27.10.2010, 18:36
49. Apple Reklame

Zitat von cafe
Zu allererst: tolle Diskussion, teilweise viel fach-chinesisch.. Zweitens: ich bin zu faul auf meine Rechtschreibung zu achten, ich schreib wie's mir gefällt, dürft gerne nach Fehlern suchen, die hat dann die Rechtschreibprüfung des Chrome übersehen :-) Die Frage nach dem Preis ist doch bei Apple komplett irrelevant - Steve Jobs hat es geschafft, dass sich egal welches Produkt inzwischen wie warme Semmeln verkauft (gibts da keinen besseren Ausdruck für?). Die iPods sind mit Sicherheit nicht die besten MP3 Player -egal - iPhones nicht unbedingt gute Handys - auch egal - beides KULT!! Da geht's nur ums haben und zeigen. itunes ist eine grässliche Software, stört aber auch keinen. Für mich hat sich mit dem Launch des neuen Airbooks im 11" Format endlich das Thema iPad erledigt. Das kostet in bester, größter, tollster Ausführung 799 EUR. Geht's noch?!?! Hat 9.7", den IQ eines iPods und 64 GB Flash-Speicher aber keine Flash Unterstützung im Browser :-( Und die Leute kaufen es trotzdem. Und wo wir grad bei Preise sind: in den USA sind Apple Produkte alle ein bissi billiger.. Kompromiss Preis zu Lasten englischer Tastatur? Ich bin ein einfacher Nutzer des Rechners: Internet, Email, ein wenig Office / Works Anwendungen, youtube. Fertig. Dafür habe ich gerne eine Tastatur, alternativ eine Maus (Magic Mouse). Weitere Peripherie schließe ich nicht an, außer mal ne externe Festplatte oder nen USB Stick; für alles andere habe ich noch einen Mac Mini und ne Time Capsule (bin auch schon voll der Apple-litis verfallen), das sind mein externes Laufwerk (super drive gespart), Drucker-Server, externer Speicher. Je weniger Kabel desto besser. Mach ich nur kaputt, bleib daran hängen, nerven. Cleveres Kabel: der magnetische Stromanschluss. Nicht so clever: die Grösse der Trafos.. Wegen der Größe - 11" sind genau meins, hatte vorher ein Dell E4200 mit 12" von der Firma, eigentlich bestens geeignet zum reisen, aber das hatte ne miese Batterieleistung ohne grösseren Akkupack (Aufpreis!), die SSD Festplatte ist innert eines Jahres 2x verreckt und der eSata auch (da hat Dell gleich mal das Motherboard getauscht und das zweite mal die Festplatte geschossen). Und man schaue sich den Preis an. Eine WWAN Karte hätten sie dem MBA spendieren können, das ist für ein reines wireless Gerät sehr praktisch. Geht also ein USB Anschluss für den WWAN USB drauf. Bei Apple begeistert mich das Mac OS X, iWorks und die anderen "Standard" Programme. Einfach, intuitiv. Und das Plug-n-play ohne "bitte legen sie die Treiber CD ein" Meldungen. Hab Win7 noch nicht probiert, gebe ich zu, aber viel gutes gehört; die Firma hat's noch nicht ausgerollt, werds mir privat sicher nicht holen, hab ja nur Mac zuhause. Weil's mir grad einfällt: Kensington-Schloß - das ärgste G'lump! Das kann man mit bisschen Geschick und Anleitung so leicht knacken.. Ein IT Mann hat's mit ner Kugelschreiberkappe in unter einer Minute offen gehabt. Seitdem liegt's im Schrank. Alles kann einem gestohlen werden, wenn man nicht drauf aufpasst, also einfach nicht unbeobachtet rumliegen lassen..(gilt für MBAs und Navis und Handys use) :-D Ach ja - das iPhone4 will ich auch noch..
Schon wieder Apple Reklame? Kann man den Mist nicht los werden?
Vielleicht sollte ich den Spiegel nicht mehr lesen.
Ich habe langsam die Nase voll.
J.H.

Beitrag melden Antworten / Zitieren
Seite 5 von 15