sobota, 5 maja 2012

Procesor & System

Procesor & System czyli o rdzeniach    


     W związku z pojawieniem się Samsunga Galaxy S3 w internecie trochę zawrzało i powstało wiele niedomówień i sprzeczności dlatego postanowiłem napisać ten cykl postów. Początkowo chciałem to zrobić w jednym poście ale pewnie był by za długi więc podzieliłem go na pod-tematy.
 Polecam wybrać na stronie sortowanie etykiety i ustawić na Samsung S3 

 O procesorze powiem krótko SGS3 dostał 4 rdzenie i co z tego powiedzcie mi która aplikacja na androida wykorzystuje 4 rdzenie ? Windows 7 ma już swoje lata a nie wiele aplikacji korzysta z wielu rdzenie mało tego mimo 64 bitów i tak jeszcze jest pełno programów 32 bitowych po tylu latach.
Dobra powiecie , że na jednym procesorze działa przeglądarką a na drugim leci film na trzecim sms a czwarty rdzeń awaryjny... nie liczcie na to bateria by poleciała w 2 minuty. Myślicie ,że kompresujecie film nakręcony kamerką dodacie przejścia, efekty specjalne i przetworzycie film na wszystkich rdzeniach wynik końcowy będziecie mieli 2 razy szybciej niż na 2 rdzeniach i 4 razy niż na 1 rdzeniu .... zapomnijcie nawet na pc jest niewiele aplikacji do montażu filmów co to potrafią.

Więc do czego te procki się przydadzą powiem wam, że nie mam pojęcia bo trzeba by poznać architekturą systemu i sprawdzić które z wbudowanych aplikacji wykorzystują drugi wątek procesora podejrzewam, że odtwarzanie filmów i aparat fotograficzny działają na innym wątku procesora pewnie może coś jeszcze ale nie liczcie , że 4 rdzenie to cztery razy szybciej w przypadku Androida a dokładniej SGS3 to można by powiedzieć albo oczekiwać szybszej reakcji na dotyk mniejszych lagowania systemu o ile android 4 to przewidział ?
    Jak ten biedny android ma sobie z tym poradzić jeżeli instalują go na 1 2 i 4 rdzeniach a niedługo na 8 a system ciągle ten sam co taki przyszłościowy doskonały jeden system wiele telefonów ?
Inaczej ma się IOS tam takiego czegoś nie ma mamy ios5 na iphona 4 jest to inny ios5 i na iphona 4s (2 procesory) jest to inny ios5 ta sama nazwa systemu ale to zupełnie inne systemy nie da się zainstalować ios5 od iphona 4s na iphonie 4 i odwrotnie bo system z iphona 4s wykorzystuje dwa procesory jest do tego przystosowany i napisany z myślą o 2 rdzeniach więc po co dla iphona 4 ten system skoro on nie ma tych rdzeni. Teraz chyba wiecie co mam na myśli pisząc o rdzeniach i optymalizacji. Dla przykładu podam że nasze myśliwce f-16 pewnie już 30 letnie używają komputera klasy pentium 386 do śledzenia toru lotu pocisku i budowania map 3d i robią to doskonale dużo szybciej niż by to zrobił dzisiejszy procesor ale ten komputer robi tylko to i nic więcej jest zoptymalizowany do tego zadania jeżeli dostał by do robienia nagle konwersje filmu to by się zagrzał albo zawiesił bo on robi tylko to i nic innego.

Inaczej ma się sprawa z GPU procesorem graficznym tam ma się wszystko inaczej procesor graficzny zawsze wykorzysta wszystkie dostępne procesory podzieli zadania na wątki bez specjalnego tworzenia kodu (nowa kompilacja programu) nie jest potrzebana mamy 4 rdzenie w grafice wszystko działa 4 razy szybciej od 1 rdzenia i odrazu widać przyrost prędkości.

I tutaj SGS3 mnie zawiódł zamiast zamontować TAGRE 3 to zamontował jakiś swój procesorek GPU Mali-400 mimo że ma GPU Mali-600 tego nie rozumiem .... był tańszy ?








Dobra to nie koniec Samsung pozbawił wszystkich fajnych gierek TAGRA-ZONE dalej nie ma tam wstępu do tego dodać ile aplikacji nie chodzi na samsungach ze względu na obecność innego GPU ciekawe czy ktoś to kiedyś policzy ? No a na plus jest , że samsung robi co może żeby deweloperzy napisali albo przerobili grę czy program żeby można było zainstalować to na samsungu dał im swój sklep i nawet dużo jest tam za free no ale co z tego jak to zawsze jest później dlaczego HTC nie ma takiego problem czy Motka ?  
Przydał by się taka lista ile aplikacji na dany telefon bo jeżeli w appstore jest 600 tyś aplikacji na iphona to dotyczy to wszystkich iphonów  a nie tylko 4s w google play jes 400 tyś ale nie dotyczy to żadnego telefonu na jednym jest troche więcej na innych mniej ale 400 tyś nie ma nikt !



Jeżeli coś się nie zgadza to chętnie wysłucham ?

11 komentarzy:

  1. Bullshit kolego pleciesz :P z systemem iphone'a jest tak, że on po prostu ma w sobie biblioteki do każdego użytego hardware'u i wybiera tylko te potrzebne. Analogicznie wszystko leci w hackintosh'u, mając mac'a na pcecie (musisz mieć w miarę kompatybilną ze sprzętem apple'a konfigurację...) system korzysta z driverów a raczej kextów (rozszerzeń jądra mach) apple'owych ewentualnie z modyfikacją bądź tylko dopisaniem "hardware id" danego sprzętu np. karty graficznej. Czasami zdarza się sytuacja w której niema możliwości odpalenia danego sprzętu np. GMA 3150 (netbooki na pinetrial) i nawet modyfikacja kextów od GMA 950 nic nie daje prawie zawsze są to sytuacje w których apple nigdy nie korzystało z danego sprzętu, chociaż z procesorami sprawa wygląda ciut inaczej np. udało mi się po naprawdę dużych mękach (2 tygodnie) uruchomić bardzo zmodyfikowanego mac'a z akceleracją graficzną na procesorze AMD i grafice nvidii (też dość starej). jak to mówią dla chcącego niema nic trudnego.

    OdpowiedzUsuń
  2. Witam !
    Odpowiem na ten post bo zupełnie go nie rozumiem chyba napisał go Pan czy Pani nie na tym blogu. Osobiście nie zajmuję się tematykom Maca od tego są inne fora i pomocy udzielają pewnie tam. Dodam tylko od siebie, że instalacja systemu Mac OS X na komputerach innych niż apple jest nielegalna. Więc nie ma się co dziwić, że nie obsługuje wszystkich komponentów a już na pewno nie tak starych jak technologia ze starych procesorów ATOM.

    OdpowiedzUsuń
  3. Przepraszam za bardzo chaotyczny post. Poniosły mnie w nim emocje oraz to, iż byłem po nieprzespanej nocy. Chciałbym się również przyznać do błędu, który popełniłem porównując ios z mac os x'em. Jednak muszę zauważyć, że instalacja mac os x'a na pececie jest legalna w Europie ze względu na prawo które nie uznaje części licencji zapisanej w eula. Oczywiście jest to pod warunkiem kupienia oryginalnej kopii systemu. Jeszcze raz chciałbym przeprosić za poprzedni post.

    ~ Mortus

    OdpowiedzUsuń
  4. Ciesze się, że blog wywołuje emocje!!

    Obawiam się jednak , że w Polsce mamy zupełnie inną licencję która jest dołączona do Mac os X ,jak jest w innych państwach europy to nie wiem pozwolę sobie załączyć linka z którego zaczerpnąłem informację tam jest na czerwono zaznaczone na umowie licencyjnej interesujące nas punkty.Osobiście przyznaje, że zupełnie się na tym nie znam ale jeżeli ten zapis był by nie zgodny z prawem polskim to w licencji apple nie widniał by ten zapis.

    http://forum.osx86.org.pl/topics14/osx-na-pc-legalnie-w-eu-vt188.htm?sid=dbfc6ec790002533a9281425f67160b2

    OdpowiedzUsuń
  5. Myślę, że cytat z wątku podanego przez pana wystarczy: "Kilka lat temu kupując powerbooka g4 rzuciłem okiem na dołączone polskie tłumaczenie licencji EULA systemu Tiger. Pisało tam jak byk i to po polsku, że licencja jest ważna tylko w US a część punktów licencji nie stosuje się w niektórych stanach (!) nie mówiąc już o reszcie świata. Pisało tam także, że nad tą licencją stoi prawo danego stanu/kraju. I taka jest prawda. Szkoda, że nie mam już tych papierów... W Leo mam po angielsku a nie chce mi się szukać tego zapisu a sądzę że jest taki sam.". Swoją drogą z tego co wiem to istnieje w Niemczech firma "PearPC" która sprzedaje komputery z preinstalowanym Mac'em.

    ~ Mortus

    OdpowiedzUsuń
  6. Bardzo ciekawy wpis z serii "Udowodnijmy wyższość iPhone za wszelką cenę". Niestety widzę, że autor ma chyba mętne pojęcie o programowaniu równoległym i systemach wielordzeniowych. Jedyną postawioną tu tezą z którą trzeba się zgodzić jest ta, że 4 rdzenie nie oznacza wprost 4 razy szybciej, jednak podobnie 2 rdzenie iPhone 4s również nie oznacza 2 razy szybciej niż w iPhone 4, i to bez względu na zmiany w iOS. Co do reszty wpisu to jest to dokładnie to co napisałem, czyli udowadnianie czegoś za wszelką ceną.
    TWIERDZENIE PIERWSZE: Android tworzony z myślą o wielu platformach nie może efektywnie korzystać z wielu rdzeni. Po pierwsze w SGS 3 jest Android ICS czyli nowszy (podobnie jak w iPhone 4s jest nowszy iOS niż w iPhone 4), po drugie system potrafiący wykorzystać dobrodziejstwo wielu rdzeni swobodnie będzie pracował na jednym. Operacje które przy wielu rdzeniach są wykonywane równolegle zostaną wykonane po prostu szeregowo i system zwolni. I tak w każdym kodzie (także na iPhone 4s) jest spora część instrukcji które muszą być wykonane szeregowo i żadne zaklinanie rzeczywistości tego nie zmieni. Procesory wielordzeniowe wraz z właściwym systemem to tylko narzędzie dla programistów umożliwiające zwiększenie szybkości działania programu, i jeżeli programiści tego narzędzia nie wykorzystają to ani Android ani iOS ani żaden inny system temu nie zaradzi.
    TWIERDZENIE DRUGIE: Bezsensowność zwiększania ilości rdzeni procesora i słuszność zwiększania ilości rdzeni GPU. Owszem renderowanie grafiki jest dobrym zastosowaniem wielu rdzeni, ale po pierwsze tylko w grach, po drugie tylko tych które potrafią z tego dobrodziejstwa skorzystać, po trzecie w tych które mają na tyle skomplikowaną grafikę by było to potrzebne, ale Wiele rdzeni GPU to dopiero drenaż baterii. Wielordzeniowe GPU potrzebuje przy pełnym obciążeniu dużo więcej energii niż obciążony w 100% procesor wielordzeniowy, a jeśli nie obciążamy w 100% wszystkich rdzeni GPU to po co te dodatkowe rdzenie. Poza tym wielordzeniowe GPU przyspieszy tylko renderowanie zaawansowanej grafiki, wielordzeniowy procesor przyspieszy wszystko, bo np: jeden rdzeń będzie przetwarzał wczytywaną stronę www, a drugi zajmie się zdjęciami na tej stronie, a trzeci np streemingiem audio z tej strony. Efekt. strona otwiera nam się zauważalnie szybciej, bo nie musimy czekać aż przeglądarka najpierw wczyta treść strony a dopiero później grafikę. Poza tym wiele rdzeni jeśli nawet nie będzie potrzebne dla poprawy płynnoći i szybkości działania UI to pozwoli dołożyć trochę bajerów które spowodują, że będzie on po prostu ładniejszy
    TWIERDZENIE TRZECIE: A właściwie nie twierdzenie tylko jakieś dziwne pomieszanie systemu 64 bitowego z 32 bitowym. Co to do diaska ma wspólnego w wielordzeniowością i wielowątkowością? Możesz łaskawie wyjaśnić? Uprzedzam, że systemy 32 bitowe potrafią korzystać z dobrodziejstw wielu rdzeni
    A na koniec z nieco innej beczki. Wyjaśnij mi proszę co to znaczy "komputer klasy pentium 386", bo znowu napisałeś coś o czym nie masz pojęcia. Komputer, a właściwie procesor, może być albo klasy Pentium albo klasy 386, coś takiego jak "pentium 386" nigdy nie istniało.
    I jak ciekawostka w bankomatach montuje się komputery w procesorami podobnej klasy - nic mocniejszego niż Pentium, i w przeważającej większości stare dobre modemy 56kbps z numerem dostępowym (teraz już częściej modemy gprs),pracujące pod kontrolą WindowsNT 4.0, i co to udowadnia? Tylko to, że nie wszędzie jest potrzeba wydawać pieniądze na coś bardziej zaawansowanego. poza tym nie da się porównać jednostki wyspecjalizowanej z tą ogólnego zastosowania

    OdpowiedzUsuń
  7. Dzięki za komentarz odpowiem od końca:

    Twierdzenie trzecie :Zgadza się pomyliłem się Pentium jest dużo nowszy od 386 zjadłem wyraz "lub" chodziło mi o klasy pentium lub 386 w całości miałem na myśli to , że chodzi o jakiś stary procesor nie mniej mój błąd ale już nie będę poprawiał bo wtedy pana post stracił by senes nie mniej źle to ująłem

    Co do 32 i 64 bitów Wielordzeniowości i wielowątkowość to ma to do siebie , że bez wielordzeniowości nie ma wielowątkowości (swoją drogą ten język polski mnie dobija i ta odmiana potem nikt z obcokrajowców nie chce się go uczyć w ang jest multitasking od wyr.multi (wiele) task (zadania)a u nas jeszcze trzeba to odmienić wielezadań by wystarczyło po co jeszcze to dziwne długie słowo "owość" a tu jeszcze wielozadaniowośc wielowątkowość...:) )tak jak napisałem bez wielordzeniowości nie ma wielowątkowości bo to ,że wydaje nam się że dwa bądz więcej programów pracuje na raz to nie znaczy że pracuje to jądro systemu przydziela odpowiednio aplikacjom czas procesora i tu się pan chyba ze mną zgodzi ? Ale ja w tekście tego nie porównywałem a chodziło mi o to że mamy system 64 bitowy już dawno a taki program RAR ( do kompresji plików) powstaje chyba po 3 latach od ukazania się ver 64 bity gdzie aż się prosi o to ze ten program jako jeden z pierwszych powinien się przesiąść na 64 bity.

    Twierdzenie drugie:Zgadzam się z panem ale też podtrzymuje swoje zdanie.
    Tak jak pan napisał wielordzeniowy procesor da kopa przeglądarce bo np: jeden rdzeń będzie przetwarzał wczytywaną stronę www, a drugi zajmie się zdjęciami na tej stronie, a trzeci np streemingiem audio z tej strony wszystko ok ale przeglądarka musi być napisana od nowa wykorzystująca dobroć wielu-rdzeni ta sam stara przeglądarka nic nie wyświetli strony szybciej ani o sekundę rozumiem że google napisał i dołączył do systemu taką przeglądarkę i ta powinna być szybsza tu się zgadzam ale jak ktoś korzysta z jakiejś innej przeglądarki to nie zyska nic. Natomiast zmiana GPU da korzyść wszystkiemu co z tego korzysta stare czy nowe i to właśnie miałem na myśli SHOOVAR wie już o co chodzi ,ale jeszcze podam analogiczny przykład dla PC to pozwoli czytelnikom zrozumieć to w prostszy sposób:

    Mamy jakąś grę czy program (bardziej graficzny)
    działa jak działa kupujemy procesor nowy który ma więcej rdzeni montujemy i nic się nie dzieje bo program jest przystosowany tylko do obsługi 1 rdzenia. Kupujemy kartę graficzną która ma o x rdzeni więcej i ten sam program czy gra (powtarzam ten sam) zaczyna szybciej chodzic (klatek na sekundę) lepsza jakośc obrazu (render) i takie tam inne fajne rzeczy. Wszyscy są zadowoleni.

    Twierdzenie pierwsze:system iphone4s nie jest nowszy od systemu iphone4 tylko inny! ukazały się równocześnie.
    "po drugie system potrafiący wykorzystać dobrodziejstwo wielu rdzeni swobodnie będzie pracował na jednym." Będzie pracował ale nie jestem pewien czy tak swobodnie, Nie chce rozwijać tego bo to temat morze.

    "Procesory wielordzeniowe wraz z właściwym systemem to tylko narzędzie dla programistów umożliwiające zwiększenie szybkości działania programu, i jeżeli programiści tego narzędzia nie wykorzystają to ani Android ani iOS ani żaden inny system temu nie zaradzi." Zgadzam się w 100% tylko między androidem a iosem jest jedna różnica zasadnicza "programiści" Jeśli Iphone dostanie 4 rdzenie to po tygodniu ponad połowa aplikacji (600 tyś tyle dla iphona liczy appstory)) jest przystosowana do obsługi 4 rdzeni i korzysta z ich dobrodziejstwa na na androida to będą lata i to jest ta różnica.
    Dlaczego tak myślę bo jak wyszedł ipad3 to programiści w 7 dni dostosowali 100 tyś aplikacji do nowego wyświetlacza (200 tyś liczy aplikacji appstory dla ipada) Dlatego dalej podtrzymuje swoje zdanie , że lepiej dla androida by było zwiększenie rdzeni na GPU ta zmiana dała by odbiorcą lepsze korzyści.

    Dodam do tego jeszcze (tak trochę uszczypliwie) Jak fani ios dostaną 4 rdzenie i krzykną HURRA !!! to to nie jest to samo HURRA !!! co krzyczą fani androida... wiemy już dlaczego !

    OdpowiedzUsuń
  8. Ogromną zaletą wielordzeniowych procesorów jest to, że nie starzeją się tak szybko. Kiedyś, 4-rdzeniowy 2.5GHz procesor kosztował więcej, niż 2-rdzeniowy 3GHz, a w grach był nawet wolniejszy. A dziś? Dziś wiele gier (GTA4 dla przykładu) na tym samym 4-rdzeniowcu chodzi płynnie, podczas gdy na 2-rdzeniowym nawet najwyżej taktowanym procesorze nie da się grać, klatkuje.

    Podobnie było z procesorami 1 i 2-rdzeniowymi dawniej.

    OdpowiedzUsuń
    Odpowiedzi
    1. Zgadzam się z tym podobne zagadnienie opisałem w tym poście:
      http://iphone-pryzmat.blogspot.com/2012/10/ile-rdzeni.html
      ale to dotyczy komputerów które nawet 8 letnie znajdą zastosowanie w domu jako serwer czy router czy coś tam nie sądzę żeby nagle jakiś samsung galaxy s3 dostał po 4-5 latach oprogramowanie i obudził się ze snu jako topowa komórka.
      Z procesorem pc może tak być ale i tak znajdzie jakieś niszowe zastosowanie i to tylko w przypadku jak się znajdzie w top Economy (cena procesora/wydajnośći).

      Usuń
  9. Jeśli nie dziś, to jutro, za miesiąc lub za kwartał te 4 rdzenie będą w 100% wykorzystane. Telefon powinien wystarczyć na te 2-3 lata. Szczególnie biorąc pod uwagę to, że wiele osób kupuje swojego iphona, czy inny tel w umowie na 2 lata.

    OdpowiedzUsuń
  10. Odpowiedź jest podobna dlatego ją przekopiowałem z tego tematu:http://iphone-pryzmat.blogspot.com/2012/10/ile-rdzeni.html

    Dodam tylko, że chętnie poczekam nawet 2 kwartały na to, że te 4 rdzenie zadziałają, i za 6 miesięcy ten test na AnandTech będzie wyglądał zupełnie inaczej....Poczekamy zobaczymy kto się mylił ?

    Trudno mi udowadniać czy 4 rdzenie dają takiego kopa w tej przeglądarce ale na szczęście są tacy co to sprawdzają:

    http://www.anandtech.com/show/5770/lava-xolo-x900-review-the-first-intel-medfield-phone/4 goście z anandtech to zrobili !

    Jest to test pod kątem xolo i cudów intela ale proszę zwrócić uwagę na One S ma 2 rdzenie i One X ma 4 rdzenie jakoś nie widzę, że te 4 rdzenie nowe mają taki przyrost prędkości w testach przeglądarki? a w linpacku (pod kątem wielozadaniowości) przegrał.

    OdpowiedzUsuń