Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Programy 64 bitowe - 32 bity żegnajcie?

O samej architekturze 64 bitowej nie muszę chyba mówić, bo jest znana już od ładnych paru lat. Zawsze byłem ciekawy czy używanie takich "szerszych" programów ma jakikolwiek sens. Na prośbę użytkownika bogdanos0 zamieszczam moja specyfikację:

Właściwie architektura wykorzystywana jest już od roku 1961, zauważam ostatnio, że wszystkie technologie mają jakieś stare korzenie. Pierwszy system x64 powstał w 1985 roku i miał jądro Unix- owe. AMD i Intel upowszechniają tę architekturę, zaczynając od AMD w 2003 roku z procesorem Athlon 64 i serwerowym Opteron- em, a Intel w roku 2004 w procesorze Pentium 4 i serwerowym Xeon- ie, do dnia dzisiejszego. Oto programy, których użyję do testu:
  • 7-Zip
  • UDK Game
  • Cinebench R10
Kompresor, gra i benchmark, wszystko ładnie obciąża zestaw, pytanie tylko, czy te programy zostały tylko skompilowane w 64 bitowym kompilatorze, czy też mają zoptymalizowany kod, o to jest pytanie!

Test

7-Zip

W tym programie skompresujemy folder o wielkości 123 MB, myślę, że jest to w miarę normalna wartość, nie za duża, nie za mała. Dodam, że w kompresowanym folderze znajdują się pliki x86 jak i x64.
Dobry start x64, różnica w wydajności aż, lub może tylko o 13%. Przy większych plikach, czyli w profesjonalnych zastosowaniach, gdzie sekundy czasami są przeliczane na złotówki, różnica na pewno będzie większa, więc opłaca się.

UDK Game

Jest to gra programu do tworzenia gier komputerowych opartych na silniku Unreal Engine 3, wykorzystuje ona niestety DirectX 9. Nie zmierzyłem FPS- ów, ponieważ nie da się wyłączyć synchronizacji pionowej, nawet poprzez sterownik Nvidi, a prawie cały czas były 62 FPS- y. Kolejną ciekawostką jest, że programy 64 bit zużywają więcej pamięci RAM, ale nigdy nic nie pisze o ilości zużywanej pamięci graficznej, przecież w grach chyba to jest ważniejsze, nieprawdaż? Dodam jeszcze, że architektura 64 bitowa może mieć szynę szerszą niż 64 bity, na przykład obecne CPU mają 128 bitów.
No, aż o 1% wygrywa x86 w grafice, za to w pamięci systemowej architektura 32 bitowa odnosi zwycięstwo o 7%, czyli przy przykładowym wzroście wydajności z poprzedniego testu zwraca się. No niestety zużycie pamięci jest większe, ale 32 bity obsługują maksymalnie 3,25 GB, a 64 bity 1 TB pamięci RAM, ale to jest już od dawien dawna wiadome. Lecz nie tylko zajętość pamięci RAM jest większa, na przykład setup Blender- a waży 27,2 MB dla x86 i 31,6 MB dla wersji x64.

Cinebench r10

Moim zdaniem dobrze zoptymalizowany program do testów, benchmark można by powiedzieć. Więc powinien dać nam duże różnice w wydajności.
No widać sobie różnice, nawet dużą, co ja pisze 21% o takie coś chodzi wiwat x64! Szczególnie na zawodach w OC warto używać programów 64 bitowych, oczywiście jeżeli komisja na to pozwoli.

Podsumowanie

Pojawia się coraz więcej programów x64, a krążą nawet pogłoski, że Windows 8 ma być w wersji 128 bitów, zobaczymy. Sądzę, że na te 128 bitów warto czekać, bo dalej 64 nie dają, aż takiego skoku wydajności jak byśmy chcieli. Jednakże na dzień dzisiejszy rozwiązanie trafione. W sumie zależy również, a nawet przede wszystkim czego się od tej technologi wymaga. A poza tym należy pamiętać, że właściwie ma już 9 lat.  

windows oprogramowanie porady

Komentarze

0 nowych
2099   8 #1 02.07.2012 09:25

równieŻ :)

4lpha   10 #2 02.07.2012 09:43

1. Ponownie na wykresach nie ma skali. Skala jest niezbędna.
2. Jeśli chodzi o zużycie VRAM, można założyć błąd pomiarowy.
3. "Przy większych plikach, czyli w profesjonalnych zastosowaniach, gdzie sekundy czasami są przeliczane na złotówki, różnica na pewno będzie większa, więc opłaca się." - Ta, profesjonaliści zajmujący się zawodowo pakowaniem i rozpakowywaniem plików w 7zip (najlepiej na Windows).

guildos   4 #3 02.07.2012 09:50

1. Pod wykresami jest skala
2. Możliwe
3. Czemu nie? Nagle z 123 MB stało się 34 MB, więc skuteczność jest. Są ludzie którzy się tym zajmują, na przykład serwisy z oprogramowaniem, nie raz pobrałem z DB plik skompresowany na przykład http://www.dobreprogramy.pl/Cinebench,Program,Windows,23774.html. A z tego co pamiętam DP ma serwerownie na Windows- ie (gdzieś w newsach przeczytałem).

  #4 02.07.2012 10:14

Dobry byłby test w jakimś faktycznym programie do kodowania/dekodowania video. Tj. ile zajmie na x86, ile na x64. To się naprawdę przekłada na złotówki np. w studiach.

guildos   4 #5 02.07.2012 10:23

@lukasamd daj link do wersji x86 i x64, instrukcje, a zrobię dla Ciebie update wpisu.

Łukash   10 #6 02.07.2012 11:05

Testujesz wersje 32bit na 64bit OS ? Czy to osobne systemy ? - tak by było najdokładniej.

alucosoftware   7 #7 02.07.2012 11:28

@guildos

Jest skala :)

Pytanie Łukasha jest uzasadnione, ponieważ aplikacje 32-bitowe uruchamiane na systemie 64-bit są inaczej zarządzane.

Performance and Memory Consumption Under WOW64:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa384219(v=vs.85).aspx

underface   14 #8 02.07.2012 14:23

skala jest tylko pod jednym\ wykresem na reszcie pisze mniej=lepiej
np 62 czego? buraków, km, telefonów 62 czego?

karololszak   6 #9 02.07.2012 18:12

@underface, masz napisane Cinebench R10 (s) -- czyli sekundy...

yuwo   8 #10 02.07.2012 18:16

Jako użytkownik Win7 64bit na początku przeżyłem boom miłości do programów 64 bitowych. Miłość minęła wraz z uświadomieniem sobie, że dla zwykłego, prostego usera nie ma znaczenia czy program jest 32 czy 64 bitowy. Różnice jak są to są statystycznie pomijalne.

gogowitczak   3 #11 02.07.2012 18:39

Systemy 32-bitowę muszą wreszcie umrzeć i tyle. Czas najwyższy. Większe zużycie pamięci RAM można częściowo tłumaczyć po prostu dłuższym adresem - każde odwołanie do miejsca w pamięci to osiem bajtów, a nie cztery. To samo tyczy się wyrównywania pamięci (do 8, a nie do 4).
128 bitów teraz? Zdecydowanie przesada. Może za pięć lat można temat rozważyć ponownie, jak systemy x64 wejdą na dobre.

  #12 02.07.2012 18:54

@guildos
"Kolejną ciekawostką jest, że programy 64 bit zużywają więcej pamięci RAM, ale nigdy nic nie pisze o ilości zużywanej pamięci graficznej"

Słyszy się, że wskaźniki są większe, no ale jak ktoś używa .net, to pewnie pamięć zużywają krasnoludki.
Pewnie tekstury są większe, hmmm i eureka! wystarczy mieć 64 bitowa kartę pamięci zamiast 512 bitowej i zużywamy mniej pamięci, i jeszcze 32 bitowy procesor zamiast 64 bitowego i już żadna tekstura nie będzie straszna

GL1zdA   12 #13 02.07.2012 19:57

"Właściwie architektura wykorzystywana jest już od roku 1961"
Kompletnie nie wiesz o czym piszesz. To, że 64-bitowe maszyny istniały w 1961 nie oznacza, że mają cokolwiek wspólnego z obecnymi 64-bitowymi. I na pewno nie były określane "x64", które jest popularnym skrótem od x86-64, oznaczającym rozszerzenie zestawu instrukcji x86.

"Dodam jeszcze, że architektura 64 bitowa może mieć szynę szerszą niż 64 bity, na przykład obecne CPU mają 128 bitów."
O jakiej szynie mówisz?

"Szczególnie na zawodach w OC warto używać programów 64 bitowych, oczywiście jeżeli komisja na to pozwoli."
A jakie to ma znaczenie, jeśli porównywane są wyniki identycznych programów? Nikt nie będzie porównywał wyników uzyskanych raz programem 32-bitowym i raz 64-bitowym.

"Sądzę, że na te 128 bitów warto czekać, bo dalej 64 nie dają, aż takiego skoku wydajności jak byśmy chcieli."
A jaki byś chciał? I na jakiej podstawie sądzisz, że 64, czy 128-bitowość, pozwoli ci to uzyskać? Bo mogę cię zapewnić, że różnica między 128 a 64 bit będzie jeszcze mniejsza niż między 64 a 32 bit.

soanvig   10 #14 02.07.2012 20:27

@guildos
Najwięcej miejsca zawsze zajmują gry. Natomiast gry zazwyczaj mają własne archiwa. A archiwa te zazwyczaj już są skompresowane tyle ile się da, nie wspominając już o tym, że grafiki, nawet w 3D same w sobie też są skompresowane. Czyli kompresowanie folderu z grą nie da wielkiej różnicy. No, chyba że RIPowanie (chociaż nie wiem do końca o co w tym chodzi, że nagle z dużego rozmiaru robi się malutki ^^)

sgj   11 #15 02.07.2012 21:49

"Pierwszy system x64 powstał w 1985 roku i miał jądro Unix- owe"

Rewelacja. Twierdzenie że system stworzono prawie 20 lat przed procesorem...
x64 = x86-64 = AMD64 => ten środkowy zapis powinien dać do myślenia czym jest cpu x64.



"na przykład obecne CPU mają 128 bitów."

128 bitowe to są niektóre rejestry. A sama architektura procesorów AMD 64 jest ograniczona do 48 bitów z czego i tak obecnie część jest nie wykorzystana.

Autor edytował komentarz.
pawcio1212   7 #16 02.07.2012 22:57

@soanvig RIPowanie- usuwanie z gry,filmu fragmentów które są niepotrzebne np filmik po uruchomieniu gry albo napisy na zakończenie można także usunąć jakieś cut-scenki i inne niepotrzebne elementy

PawelJ84   1 #17 02.07.2012 23:11

Ostatnimi czasy trochę ucichło zamieszenie architektury procesorów. Sądzę, że to zamieszanie było napędzone przez marketing - 64 to więcej niż 32. Mając do dyspozycji przeciętnego PC z 3GB RAMu nie ma sensu stawianie na x86-64 architekturą (jak widać w teście większe zużycie pamięci ram a także dysku - dodatkowy podsystem 32 bit dla zachowania kompatybilności z starszymi programami 32 bit. W przypadku jednak maszyn z dużą ilością pamięci jest ona niezbędna.
Natomiast jeśli chodzi o samą architekturę (AMD64, x64) to została ona "przystosowana" do rynku. Przecież nikt nie kupił by komputera na którym nie chodziły by ulubione 32 bitowe aplikacje a zapotrzebowanie na ram rosło, wobec czego dodano kolejne rozszerzenie x86-64. W tej kwestii bardziej radykalna byla architektura IA64 stosowana w procesorach Itanium 1&2 (niestety nie zetknąłem się z nimi), która sądzę iż była bardziej przełomowa bo wychodziła dalej (próba połączenia CISC i RISC)
Co do bitowości szyny - ta zabawa w mnożenie szerokości szyny zaczęła się chyba od pierwszych pentiumów (miały szynę danych 64 bit).
Podsumowując, dla mnie AMD64 nie jest niczym przełomowym, jedynie drobną ewolucją i ratowaniem procesorów x32.

177   5 #18 03.07.2012 01:09

Do dyskusji 32bit, 64bit mogę polecić taki videocast: https://www.youtube.com/watch?v=yvV10oeTIV0

flaszer   10 #19 03.07.2012 11:47

Test nie do końca miarodajny, już pomijam fakt, jakie programy testujesz - to się ma nijak do zastosowań profesjonalnych, ale wersja używanego Windowsa już tak. Test powinien wyglądać tak - identyczna maszyna i dwie wersje Windows - 32 i 64 bit, a nie bawienie się w emulację 32 bitów na 64 bitowym systemie, bo to może być w niektórych przypadkach różnica. W jakich? Warto sprawdzić, o ile masz możliwość, chęć i czas stawiania 32 bitowego systemu.

GioWDS   14 #20 03.07.2012 14:05

@PawelJ84: O ile pamiętam większość obecnych procków tłumaczy rozkazy na takie bardziej RISC-like:)

FadeMind   8 #21 03.07.2012 16:57

Architektura 64-bit ma przede wszystkim znaczenie dla aplikacji CAD, renderowania grafiki 3D czy obróbki filmów HD. Oczywiście dodatkowym i ważniejszym aspektem jest szybkość oraz ilość pamięci operacyjnej.

Niektóre aplikacje są wydawane tylko w wersji x64 (AutoCAD, Adobe Premiere). Jest to podyktowane przede wszystkim aspektem przeznaczenia aplikacji. Aby te programy mogły działać stabilnie i szybko wymagają szybkiego wielordzeniowego CPU oraz dużą ilość pamięci operacyjnej (standard to 8 GB RAM, chociaż coraz częściej inwestuje się w stacje robocze z 16 GB RAM). Po za tym architektura x64 ma ogromne znaczenie dla aplikacji bazodanowych czy serwerowych.

Dla zwykłego użytkownika instalacja systemu x64 jest wskazana tylko pod warunkiem posiadania minimum 4 GB RAM (lub przyszłościowej rozbudowy komputera, - użytkownik ma teraz 3 GB RAM a będzie mieć docelowo 8 GB RAM).

Podsystem WoW64 (Windows on Windows) pozwala uruchamiać aplikacje w architekturze x86 na komputerach z 64-bitowymi systemami z rodziny Windows.

Dopiero od czasu Windows Vista Microsoft wydaje równolegle edycję x64 i x86. Windows XP Pro x64 nie przyjął się ze względu na brak zainteresowania konsumentów. Dopiero zwiększone wymagania Windows Vista spowodowały upgrade sprzętu.

Kiedy Microsoft wydał Windows Vista pojawiła się plotka, że Windows 7 będzie ostatnim systemem z rodziny x86. Windows 8 miał być dostępny tylko w wersji x64 i planowano rozpocząć pracę nad wersją x128.

Mamy kilka miesięcy do oficjalnej premiery Windows 8. Architektura x86 ma się świetnie.

sgj   11 #22 03.07.2012 17:46

@FadeMind
"Windows XP Pro x64 nie przyjął się ze względu na brak zainteresowania konsumentów. "

Chyba raczej dlatego że już rok po nim wyszła Vista...

"Mamy kilka miesięcy do oficjalnej premiery Windows 8. Architektura x86 ma się świetnie."

"Swietnie". Jedyna preinstalowana wersja x86 to starter na netbookach. Z kolei z wersji pudełkowej opcję 32 bit wybierają tylko nieświadomi użytkownicy lub osoby, które z jakiś powodów nie moga użyć wersji 64 bit.

Chemical Attack   4 #23 04.07.2012 09:28

Mam 2 maszyny z których jedna (3GB Ram, karta zintegrowana, procesor core 2 duo) ma na pokładzie Ubuntu 12.04 LTS x86, druga natomiast (8GB RAM, karta nVidia 2GB RAM'u własnego i procesor core i5 z HT) na której zainstalowane jest Ubuntu w wersji x64. Różnica jaką zauważyłem jest taka, iż na gorszym sprzęcie pod WINE odpalam większość gier Windowsowych.. czasem z mniejszymi lub większymi problemami, ale odpalam. Na wersji x64 nie mam tego luksusu.. większość gier po prostu nie odpala się, lub po otwarciu nie da się w nie grać. Ponadto na wersję x64 brakuje kilku programów, jak chociażby draftsight czy adobe air (który można po modyfikacjach zainstalować z wersji x86). Niektóre programy z repozytoriów nawet po zainstalowaniu niestety nie działają:( Po moich doświadczeniach chętnie przeskoczyłbym na gorszą wersję x86, ale niestety jak wspominaliście będzie to związane z marnowaniem dużej ilości RAM, a nie po to kupiłem sprzęt w takiej konfiguracji, żeby go marnować...

  #24 04.07.2012 11:45

@Chemical Attack no to na systemie 32bit zainstaluj kernel PAE i będziesz miał nadal 8GB dla systemu. Kernel bez PAE obsłuży tylko 4GB.

invader92   5 #25 04.07.2012 19:26

Zabawne jest to, że wiele osób nadal nie potrafi określić różnic pomiędzy x86_64 a x64 i pewnie nie prędko sobie zda z tego sprawę.

Razi   5 #26 08.07.2012 22:58

Wiele razy mówiłem, że 64-bit może działać nieznacznie szybciej, ale zapotrzebowanie na pamięć jest większe :)

  #27 08.07.2012 23:42

"AMD i Intel upowszechniają tę architekturę, zaczynając od AMD w 2003 roku z procesorem Athlon 64 i serwerowym Opteron- em, a Intel w roku 2004 w procesorze Pentium 4 i serwerowym Xeon- ie, do dnia dzisiejszego."

Pierwszy 64-bitowy procesor przeznaczony dla "przeciętnego" zjadacza chleba stworzył intel, było to w 2001 roku i procesor nazywał się Itanium. Nie przyjął się głównie ze względu na cenę i kiepską wydajność pierwszego modelu. Itanium 2 natomiast został dopracowany i pomimo częstotliwości rzędu 1.6 GHz jest znacznie wydajniejszy w większości zadań od współczesnych Xeonów... Dlaczego ten się nie przyjął? AMD zaczęło wprowadzać swoje rozszerzenie AMD64, które było kompatybilne z architekturą x86 i znacznie, znacznie tańsze, chociaż wydajnościowo w stosunku do itanium niezwykle kiepskie. Marketing dalej zrobił swoje, a szkoda, bo przy dzisiejszym postępie, kolejne wersje Itanium pewnie osiągnęłyby moc obliczeniową porównywalną z niektórymi tańszymi kartami graficznymi.

Warto dodać, że procesor itanium jest w pełni 64 bitowym procesorem, natomiast rozszerzenie x86-64 (AMD64. EM64T) tylko udaje 64 bity.

  #28 09.07.2012 12:53

Warto zauważyć, że obecnie każdy laptop ma 4GB i więcej, dlatego też ma system 64 bitowy. Więc ta architektura staje się coraz popularniejsza a tym samym powstaje więcej programów zooptymalizowanych do x64. Według mnie powinni przejść już tylko na x64.