Dual core-stöd först i Gingerbread - källa?

Diskussion i 'Allmänt' startad av Silvercliff, 15 jan 2011.

  1. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

    Det har skrivits en del om bristen på dual core support i Froyo i detta forum. [0]

    Är det någon som kan förklara varför Froyo skulle "sakna" dual core support? Eller varför det skulle fungera bättre (vara "aktiverat") i Gingerbread?

    Det enda jag sett i Gingerbread som antyder bättre stöd för dual core är bytet från YAFFS till EXT4, och möjligen Concurrent garbage collection.
    http://www.esphoneblog.com/2010/12/28/android-gingerbread-2-3-and-newer-will-use-ext4-file-system/

    Jag är programmerare, så köper jag köper ingen bullshitförklaring, ge mig fakta. :P

    [0] Ett tiotal gånger i tråden om LG Optimus 2X t.ex, men även i Motorola Atrix-tråden och i kommentarer på artiklar om dual core och telefoner med Tegra 2.
     
  2. Poptot

    Poptot Senior Droid Medlem

    Blev medlem:
    10 aug 2010
    Inlägg:
    1 316
    Mottagna gillanden:
    74

    MINA ENHETER

    LG Optimus 2x kommer ju med 2.2 Froyo, så det måste ju finnas stöd för Dualcore i Froyo

    Skickat från min Desire Z med Tapatalk PRO
     
  3. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

  4. FlyBob

    FlyBob Senior Droid Medlem

    Blev medlem:
    5 jun 2009
    Inlägg:
    1 367
    Mottagna gillanden:
    30

    MINA ENHETER

    Mycket snack utan kunskap säger jag.
     
  5. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

    Det ska väl sägas att multicore på Android är ungefär samma bekymmer för utvecklare som multicore på andra plattformar. Det gäller att skriva sina applikationer så de drar nytta av mer än en kärna, åtminstone om man tänkt dra nytta av processorns kraft.

    T.ex om man kör benchmarking på processorn så måste benchmarkingprogrammet göra jobbet i lika många trådar som processorn hanterar. (T.ex två stycken på en Tegra 2)

    Men jag ser verkligen fram emot att se om någon vågar skriva att Froyo inte klarar dual core i denna tråd. ;)
     
  6. the_slain_man

    the_slain_man Teen Droid Medlem

    Blev medlem:
    16 mar 2010
    Inlägg:
    296
    Mottagna gillanden:
    8

    MINA ENHETER

    Och precis som på pc så lär det mest märkas vid multitasking i början. Det man kan börja med att undersöka är ju om det är en smp kernel som körs.
     
  7. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

    Precis, men titta här, våra ryktesspridare på forumet får hjälp av stora tekniksiter:
    http://www.slashgear.com/lg-optimus-2x-hands-on-video-05123403/
     
  8. twisted1

    twisted1 Professional Droid Medlem

    Blev medlem:
    5 jul 2010
    Inlägg:
    2 549
    Mottagna gillanden:
    205

    MINA ENHETER

    Okunskap i kombination med felaktiga översättning och ingen källkritik.

    Det står i artikeln att froyo inte inkluderar stöd för att köra flera trådar samtidigt. Tegra 2 plattformen har stöd för smp multithreading.

    Självklart kommer båda kärnorna nyttjas oavsett, men samma program kan inte köra flera trådar simultant. Det är en jävla skillnad, det krävs även implementering av detta i själva programet/appen för att nyttja det maximalt. Sen kan ni ju fråga er exakt hur ofta Android bara kör ett enda program helt exklusivt?
     
  9. PatrikS

    PatrikS Senior Droid Medlem

    Blev medlem:
    29 jun 2009
    Inlägg:
    1 123
    Mottagna gillanden:
    65

    MINA ENHETER

    Vilket skitsnack, så vad säger de benchmarks som LG:n kört och visat överlägsen prestanda på froyo?
    om du så skriver en Handler i java för en bakgrundstråd så har du lämnat öppet för Dalvik / Linux att placera den tråden i nästa kärna så de flesta programmen & spelen kommer per automatik dra nytta av flera kärnor.
    Men sådana här rykten kommer alltid spridas, precis som allt annat hittepå i samhället.
     
  10. cerebrum

    cerebrum Kid Droid Medlem

    Blev medlem:
    9 jan 2011
    Inlägg:
    34
    Mottagna gillanden:
    14

    MINA ENHETER

    Aktuella linux-versioner har naturligtvis stöd för flera kärnor. Vad gäller trådar så är saken en smula mer komplicerad. Linux har "som standard" ett 1:1-förhållande mellan user threads och kernel threads, men i princip kan detta hanteras även på andra sätt och är delvis beroende av trådbiblioteken (ex gnu portable threads). Solaris hade tex tidigare flera user threads per kernel thread och call back-funktionalitet när en tråd blev blockerad. Vad gäller java så ska aktuell jvm implementera trådhantering, och det kan göras helt utan hänsyn till underliggande os. Hur Dalvik har implementerat java-trådar vet jag inte men principiellt skulle problemet kunna ligga där. En snabb googling av Dalvik och trådar medför inte att jag ser någon anledning att misstänka att Dalvik inte hanterar flera trådar på ett adekvat sätt. Min misstanke är därför att det borde fungera, men jag *vet*, som sagt, inte säkert.

    http://en.wikipedia.org/wiki/Thread_(computer_science)
     
  11. cjb

    cjb Professional Droid Medlem

    Blev medlem:
    7 jan 2011
    Inlägg:
    2 446
    Mottagna gillanden:
    1 280
    Operatör:
    Vimla
    Telefon:
    Galaxy S25 Ultra

    MINA ENHETER

    Operatör:
    Vimla
    Telefon:
    Galaxy S25 Ultra
    Telefon 2:
    Galaxy S23+
    Visserligen jobbar jag inte med datorer i den bemärkelsen utan är helt själv lärd, men allting är ju relativt och sen beror det ju på hur man definierar "stödjer inte" dual-core, rätt uttryck kanske skulle vara "är inte optimerat".
    Att det inte skulle stödja det i form av att den ena kärnan inte skulle användas alls är säkert fel, men som du själv skriver har Froyo YAFFS vilket väl innebär att endast en kärna kan jobba mot respektive applikation eftersom det är ett entrådigt filsystem, eller?
    I och med detta spelar det väl ingen roll om du har en applikation som är skriven för flera kärnor då begränsningen är filsystemet, eller?
    För mig som glad amatör innebär detta att 2.2 inte stödjer dual-core, men allting är ju som sagt relativt ;)
    Övergången till ext4 gör ju att 2.3 redan i grunden kan dra nytta av dual-core pga sitt flertrådiga filsystem.

    Vad det egentligen handlar om är ju om 2.2 kan dra nytta av dual-core eller inte.

    Om det nu är så att jag har fel i det jag säger så får någon vänlig själ gärna förklara var jag har fel och på vilket sätt, men gör det på ett moget sätt och inte en massa "trash talk".
     
  12. nilo

    nilo Youth Droid Medlem

    Blev medlem:
    4 jan 2011
    Inlägg:
    127
    Mottagna gillanden:
    26

    MINA ENHETER

    "Concurrent garbage collection." låter som om det kan vara vad man hakat upp sig på, traditionellt i en jvm måste den låsa alla trådar när den behöver garbage collecta, vilket resulterar i dålig prestanda om man allokerat allt minne, haft många problem med detta i server miljöer där minnet toppat, då går hela systemet i sirap om man inte hanterar detta genom att antingen utöka minnet eller begränsa mängden trådar osv.
     
  13. PatrikS

    PatrikS Senior Droid Medlem

    Blev medlem:
    29 jun 2009
    Inlägg:
    1 123
    Mottagna gillanden:
    65

    MINA ENHETER

    Filsystemet har inte direkt så mycket med det att göra, inte såvitt jag förstår, eller om man vänder på det, exakt hur skulle filsystemet inverka?
    Man kan i teorin byta filsystem på vilken androidversion som helst, skulle det då påverka multikörning?
     
  14. twisted1

    twisted1 Professional Droid Medlem

    Blev medlem:
    5 jul 2010
    Inlägg:
    2 549
    Mottagna gillanden:
    205

    MINA ENHETER

    Filsystemet har naturligtvis absolut inget som helst med multi-threading att göra.

    Multithreading är inte lösningen på alla problem heller, smp multithreading ex. passar sig bäst till tunga beräkningar. Vissa har kanske provat på foldingklienter på sina datorer, dessa kan dra nytta av riktigt SMP multithreading tex.

    Men cortex A9 är även snabbare per klock än Cortex A8, ca 20% snabbare per klock.
     
  15. holck

    holck Android Apprentice Medlem

    Blev medlem:
    2 aug 2010
    Inlägg:
    4 504
    Mottagna gillanden:
    513
    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro

    MINA ENHETER

    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro
    ROM:
    Default
    Telefon 2:
    Galaxy Watch 4 LTE
    ROM:
    Default
    Jobbar med större unixsystem normalt sett men har ju självklart kommit i kontakt med Linuxburkar också. Rent konkret, så vill jag minnas att en simpel "uname -a" berättar om laddad kernel har smpstöd genom att helt enkelt skriva ut SMP.

    Här är en output från en ubuntutruck som kör på en singelcorecpu:

    Linux hostname 2.6.35-22-server #35-Ubuntu SMP Sat Oct 16 22:02:33 UTC 2010 x86_64 GNU/Linux

    Vill minnas att detta ej står med på kernels utan SMP-stöd.
    Detta är väldigt hög nivå av kontroll och säkert inte alls avgörande.

    Prova en $ busybox uname -a eller nåt för att kolla efter vad som skrivs ut.
     
  16. the_slain_man

    the_slain_man Teen Droid Medlem

    Blev medlem:
    16 mar 2010
    Inlägg:
    296
    Mottagna gillanden:
    8

    MINA ENHETER

    Detta får jag på CM7 på min Nexus One
    Kod:
    Linux localhost 2.6.37-cyanogenmod+ #1 PREEMPT Sat Jan 8 05:08:53 EST 2011 armv7l GNU/Linux
    Men antar att SMP antaglien är avstängt i kernelconfig vid kompileringen.
     
  17. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

  18. holck

    holck Android Apprentice Medlem

    Blev medlem:
    2 aug 2010
    Inlägg:
    4 504
    Mottagna gillanden:
    513
    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro

    MINA ENHETER

    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro
    ROM:
    Default
    Telefon 2:
    Galaxy Watch 4 LTE
    ROM:
    Default
    Troligtvis så vill de göra det så optimerat som möjligt och helt enkelt skippa
    SMP om de inte behövs men möjligheten finns ju.

    Sen vet jag inte om SMP-stöd ens finns ARM-delen i Linuxkernel men de går
    ju att se efter såklart.

    Som någon skrev tidigare att cpuerna kommer att arbeta med bägge cores oavsett.

    Svaret är Nej, de gör de inte.
    Linux, Solaris, Windows etc etc arbetar ALLTID på CPU#0.

    Finns en CPU#1 så kan även denna hjälpa till att köra processer.
    Men, återfinns inte denna i operativet så kommer den att idla.

    // A
     
  19. Silvercliff

    Silvercliff Teen Droid Medlem

    Blev medlem:
    17 aug 2009
    Inlägg:
    479
    Mottagna gillanden:
    61

    MINA ENHETER

    http://www.anandtech.com/show/4144/...gra-2-review-the-first-dual-core-smartphone/7
    Dvs LG Optimus 2X-kerneln har SMP aktiverat, i Android 2.2

    Däremot:
    http://developer.android.com/sdk/android-3.0-highlights.html#multicore
     
  20. holck

    holck Android Apprentice Medlem

    Blev medlem:
    2 aug 2010
    Inlägg:
    4 504
    Mottagna gillanden:
    513
    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro

    MINA ENHETER

    Operatör:
    Tre
    Telefon:
    Pixel 6 Pro
    ROM:
    Default
    Telefon 2:
    Galaxy Watch 4 LTE
    ROM:
    Default