Entwickelt ihr gleichzeitig für x64?
-
Ich mach es! schrieb:
blubberfarm schrieb:
... mal so gefragt. Ich hab mir vorhin den Source zu OGG/Vorbis gezogen, musste aber feststellen das es wohl nicht x64 kompatible ist. Beim kompilieren bekomme ich nen haufen errors angezeigt. Darunter auch in etwa was mit asm wird von dieser Architektur nicht unterstützt. Aber egal, es war nur ein Fehler von vielen den ich da bekam.
Achtet ihr heutzutage darauf das eure Projekte auch unter x64 laufen bzw. erzeugt ihr dafür auch Builds ... sofern ihr sie Testen könnt?
Ich lasse sie gleichzeitig erzeugen und Teste sie ab und zu unter Vista x64. Zwar etwas sinnlos weil so schnell keiner meine kleinen OpenGL Versuche zu sehen bekommt. Aber so hab ich sie und muss mir später keine gedanken machen ob das alles tuts oder nicht.
Meine Software läuft immer unter folgenden Architekturen:
x86
Alpha AXP
Sun SPARC
Motorola 68000
PowerPC
ARM
Hitachi SuperH
IBM S/390
MIPS
HP PA-RISC
Intel IA-64
AMD x86-64
AXIS CRIS
Renesas M32R
Atmel AVR32
Renesas H8/300
NEC V850
Tensilica Xtensabei vielen auf den 32- und 64-bit Varianten
Ich versteh auch gar nicht warum ich mich künstlich einschränken sollte
weil es bei manchen libs nicht immer unter allem läuft und das selber schreiben kostet zeit
-
blubberfarm schrieb:
Achtet ihr heutzutage darauf das eure Projekte auch unter x64 laufen bzw. erzeugt ihr dafür auch Builds ... sofern ihr sie Testen könnt?
Ja. Ich entwickle nur noch unter x64 und kann so gleich beide Systeme testen.
Was ist das? schrieb:
Was ist x64 denn? Also wegen dem x muss ich an Intel denken, aber da gibts doch nur x86_64 bzw. amd64, was von Intel aber nicht verwendet wird.
x64 == AMD64 == EM64T
Zwischen AMD64 und EM64T gibt es nur kleine Unterschiede, diese sind aber für den normalen Entwickler eher uninteressant und können ignoriert werden.
-
Noch habe ich mich nicht in die 64 bittige Programmierung eingearbeitet. Zukünftig möchte ich diesen Aspekt aber natürlich auch bewusst einbinden, wenn es Sinn macht. Da sich meine programmiertechnischen Ergüsse aber noch auf kleine Spielerein und private Projekte beschränken, ist die Dringlichkeit an der Stelle noch nicht all zu groß. Man darf aber nicht vergessen, dass mittlerweile gut 80% der Heimanwender (aus den Fingern gesogene Schätzung) dank Athlon64 oder Core 2 Duo Prozessoren 64 Bit-fähige Rechner besitzen und es somit nur noch eine Frage der Zeit ist, bis sich alles umstellen wird.
-
Es gibt bei 64-Bit-Programmierung nichts zum einarbeiten. Man hält sich einfach nur an die Richtlinien, die sowieso für portable Programmierung gelten sollten, wobei die wichtigste
sizeof(int) != sizeof(void*)
ist.
-
.filmor schrieb:
Es gibt bei 64-Bit-Programmierung nichts zum einarbeiten. Man hält sich einfach nur an die Richtlinien, die sowieso für portable Programmierung gelten sollten, wobei die wichtigste
sizeof(int) != sizeof(void*)
ist.Sagt mal wer kam eigentlich auf die geniale Idee das überhaupt einzuführen? Vor gar nicht all zu langer Zeit war ja sogar auf x86 Systemen die Wortbreite != der Adressbreite.
-
.filmor schrieb:
Es gibt bei 64-Bit-Programmierung nichts zum einarbeiten. Man hält sich einfach nur an die Richtlinien, die sowieso für portable Programmierung gelten sollten, wobei die wichtigste
sizeof(int) != sizeof(void*)
ist.unsigned int != size_t und noch einiges mehr.
-
Aber die Sache mit den Zeigern ist die, die für 64-Bit relevant ist.
-
Warum sollte gerade das das wichtigste sein?
-
Weil auf normalen x86ern architekturbedingt int meistens genauso groß war wie ein Zeiger. Darauf haben sich leider ne Menge Leute verlassen was auf amd64 halt kräftig in die Hose geht, weil int gleichgroß geblieben ist während Zeiger nun doppelt so groß sind.
Das „Wichtigste“ ist vielleicht falsch, aber das ist das, was die meisten Probleme produziert.
-
irgendwelche bitoperationen können z.B. auch noch fehler mit sich bringen bei der umstellung von 32 auf 64 bit
.filmor schrieb:
Das „Wichtigste“ ist vielleicht falsch, aber das ist das, was die meisten Probleme produziert.
Ja, das häufigste vielleicht, aber gerade an die Sachen, die man nicht so häufig falsch macht, denkt man seltener und findet sie dann oft schwerer. Und wichtig sind sie alle.
-
Ein guter Anfang ist der Programming Guide for 64-bit Windows.
-
ich überleg mir eher, ob ich meine sachen überhaupt noch auf 32bit testen soll.
das problem is ja nich, dass die meisten nun einen 64bitter zu hause haben, sondern dass die wenigsten ein 64bit OS drauf laufen lassen.
-
skob schrieb:
ich überleg mir eher, ob ich meine sachen überhaupt noch auf 32bit testen soll.
das problem is ja nich, dass die meisten nun einen 64bitter zu hause haben, sondern dass die wenigsten ein 64bit OS drauf laufen lassen.Irgendwie ist das wirklich ziemlich traege alles. Liegt vllt. daran das in den meisten PCs nur 2 Gigabyte an RAM installiert ist. Dabei ist RAM Speicher doch inzwischen richtig billig geworden und man koennte Heute >16 Gigabyte ohne Probleme im normalen Desktop PC einbauen. Grade Laptops wuerden von so grosem RAM profitieren.
Wenn ich nicht falsch liege ist der groesste Vorteil von 64bit Systemen doch der, dass eine Applikationen im System den vollen RAM ausnutzen kann. Aber welche Applikationen kann wirklich so viel RAM jemals belegen.
So bleiben 64bit Systeme eben fuer Spezialanwendungen vorbehalten und niemand investiert freiwillig in Portierungen, wenn der Nutzen so gering ist. Ich selbst habe blos 2 Gigs an RAM und meistens sind davon 500 MByte ungenutzt.
-
Das Liegt allerdings am virtuellen Speicher.
Von meine 2GB ist fast nix frei, allerings 1 GB cached und 3 GB Page File Used von 4 GB (Vista 64-bit)