Permalänk
Hjälpsam
Skrivet av sAAb:

Dina resultat för AMD FX-8350 @ 4.0 GHz är ju spännande

Win 10 ger 130 sek
Linux ger 76.6 sek

Det hade man inte sett enkelt om de varit i olika flikar.

Onekligen intressant resultat.
Vore i alla fall bra om de som inte angett OS gör så, speciellt om de kört på Linux.

Visa signatur

AMD Ryzen 7 5700X | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/51gntq | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/gwcxfs
HTPC | https://valid.x86.fr/gqtxws |

Permalänk
Medlem

Kan man inte rita upp en graf för Linux och en för windows?

Ryzen resultatet är med största sannolikhet från ett windows baserat system.

Visa signatur

Ryzen 9 5950X, 32GB 3600MHz CL16, SN850 500GB SN750 2TB, B550 ROG, 3090 24 GB
Har haft dessa GPUer: Tseng ET6000, Matrox M3D, 3DFX Voodoo 1-3, nVidia Riva 128, TNT, TNT2, Geforce 256 SDR+DDR, Geforce 2mx, 3, GT 8600m, GTX460 SLI, GTX580, GTX670 SLI, 1080 ti, 2080 ti, 3090 AMD Radeon 9200, 4850 CF, 6950@70, 6870 CF, 7850 CF, R9 390, R9 Nano, Vega 64, RX 6800 XT
Lista beg. priser GPUer ESD for dummies

Permalänk
Medlem
Skrivet av Ratatosk:

Vem har förresten smygt med dessa anonyma järvar och noshörningar med mera?

Det är Google som ger alla icke-inloggade sådana namn/avatarer!

Skickades från m.sweclockers.com

Visa signatur

🖥️ IQUNIX ZX-1 - i5-10600K - Z490I Unify - RTX 3070 - 32 GB 3600 MHz - SF750 - ASUS PG279QZ
🚗 Fanatec CSL DD - CSL Pedals LC - HP Reverb G2
📺 LG B1 55 - Dali Concept 6 - Pioneer VSX-923
🎮 AYN Odin Lite
📞 Asus Zenfone 10

Permalänk
Medlem

Staplarna till höger är genomsnittet för alla med samma processor?

Visa signatur

Coca Cola missbrukare Förbjuden dryck för mig pga diabetes
AMD älskare
Katt älskare

Permalänk
Medlem
Skrivet av sAAb:

Dina resultat för AMD FX-8350 @ 4.0 GHz är ju spännande

Win 10 ger 130 sek
Linux ger 76.6 sek

Det hade man inte sett enkelt om de varit i olika flikar.

Körde en runda i win 10 med en FX-8350 oc på 5,1Ghz resultat 99,96 sekunder

Visa signatur

Ryzen 5800X ROG STRIX X570-f GAMING FlareX DDR43600 cl 14-14-14-34 EVGA FTW3 Ultra RTX 3090

Permalänk
Medlem
Skrivet av sesese:

Körde en runda i win 10 med en FX-8350 oc på 5,1Ghz resultat 99,96 sekunder

Det vore skoj om du kunde testa köra Blender i virtuellt som Yoshman föreslog, så vi ser om det stämmer för fler än Ratatosk.

Visa signatur

| Fractal Design Define R5| Asrock X399 Fatal1ty| Threadripper 1950X| Noctua NH-U14S TR4-SP3| Corsair Vengeance LPX 8x16GB 3200 C16| be quiet! Straight Power 11 Platinum 1000W| ASUS RTX 3080 10GB Strix| LG OLED 4k 42" C2| Debian Sid| KDE 5.x|

Permalänk
Medlem
Skrivet av AMD-FX:

Staplarna till höger är genomsnittet för alla med samma processor?

I nuläget är det högsta resultatet per processor (Core performance)

Visa signatur

Jag äger minst en databehandlingsmaskin.

Permalänk
Medlem
Skrivet av Perkka:

I nuläget är det högsta resultatet per processor (Core performance)

Ok. då vet jag det

Visa signatur

Coca Cola missbrukare Förbjuden dryck för mig pga diabetes
AMD älskare
Katt älskare

Permalänk
Datavetare
Skrivet av Bael:

@Yoshman: Såg i listan att på 7850K/FX8350 står det 4 respektive 8 kärnor men med tanke på en av våra senaste diskussioner så borde det faktiskt stå 2 kärnor på 7850K samt 4 kärnor på FX-8350, eller?

Tja, jag anser att t.ex. FX-8350 är en fyrkärnig CPU med åtta CPU-trådar. AMDs ingenjörer är av samma åsikt och CPUn själv identifierar sig just som att varje modul är en kärna med två trådar. Vidare uppfyller moduldesignen kravet för att kallas SMT, en annan typ av SMT jämfört med Zen, Core m.fl.

Finns PowerPC designer som är SMT (och där tillverkaren kallar det SMT) som varken fungerar som Zen/Core eller Bulldozer, enda kravet för SMT är att minst en av fetch, decode och execute stegen ska delas mellan trådarna. AMD må kalla det CMT, men det är fortfarande en SMT variant (Intel kallar ju sin SMT implementation för "Hyperthreading").

Ser man till prestanda per kärna i just Blender så blir ju den löjligt låg om man anser att det är två kärnor i varje modul, i detta fall beror det nog till viss del på att det bara är en FPU och det är ett flyttalstungt test.

Räknar man FX-8350 som att ha åtta kärnor har ju AMD Phenom II 65 % högre IPC, till och med Silvermont Atom hamnar precis före FX-8350 i IPC (har lagt till ett resultat för Intel Z3770, d.v.s. resultat från en pekplatta).

Men låt oss lämna denna diskussion därhän, den slutar aldrig i någon form av konsensus ändå. Tycker man varje modul är två kärnor är man i alla fall på samma sida som AMDs PR-avdelning

Skrivet av Ratatosk:

AMD FX 8350@stock 1:16:62.
Det var som...
Nu verkade inte Blender, Ubuntu Unity och jag trivas speciellt bra tillsammans.

Frågan är vad det är för problem med Blender under Windows. Även i Linux ligger IPC på ~1,7 på Sandy Bridge. Ett värde under 2,0 är lågt i det enkeltrådade fallet, men ~1,7 är vad man totalt får över två trådar vilket är löjligt lågt med tanke på att det är väldigt nära 100 % L1/L2-cache hit rate.

Även om det till viss del går att förklara skillnaden mellan Windows och Linux med att den senare använder vektoriserade instruktioner är det svårt att förklara den brutalt låga IPCn avsett version.

Sedan är det något i just i Windows-versionen av Blender som totalt verkar sänka IPC på Bulldozer-Excavator, hur man än väljer att räkna är den väsentligt mycket lägre jämfört med Intel än vad som är normalt.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

Tja, jag anser att t.ex. FX-8350 är en fyrkärnig CPU med åtta CPU-trådar. AMDs ingenjörer är av samma åsikt och CPUn själv identifierar sig just som att varje modul är en kärna med två trådar. Vidare uppfyller moduldesignen kravet för att kallas SMT, en annan typ av SMT jämfört med Zen, Core m.fl. Finns PowerPC designer som är SMT (och där tillverkaren kallar det SMT) som varken fungerar som Zen/Core eller Bulldozer, enda kravet för SMT är att minst en av fetch, decode och execute stegen ska delas mellan trådarna. AMD må kalla det CMT, men det är fortfarande en SMT variant (Intel kallar ju sin SMT implementation för "Hyperthreading"). [...] Men låt oss lämna denna diskussion därhän, den slutar aldrig i någon form av konsensus ändå. Tycker man varje modul är två kärnor är man i alla fall på samma sida som AMDs PR-avdelning

Bara liiite...

Läser man på http://legalnewsline.com/stories/510646458-amd-faces-suit-ove...

Citat:

Tony Dickey, on behalf of himself and others similarly situated, filed a class-action lawsuit on Oct. 26 in the U.S. District Court for the Northern District of California, San Jose Division against Advanced Micro Devices, Inc. (AMD) for alleged violations of the Consumer Legal Remedies Act, California’s Unfair Competition Law, false advertising, fraud, breach of express warrant, negligent misrepresentation and unjust enrichment. In claiming that its new Bulldozer CPU had “8-cores,” which means it can perform eight calculations simultaneously, AMD allegedly tricked consumers into buying its Bulldozer processors by overstating the number of cores contained in the chips. Dickey alleges the Bulldozer chips functionally have only four cores—not eight, as advertised.

och https://www.extremetech.com/extreme/217672-analysis-amd-lawsu...

Citat:

This lawsuit essentially asks a court to define what a core is and how companies should count them. As annoying as it is to see vendors occasionally abuse core counts in the name of dubious marketing strategies, asking a courtroom to make declarations about relative performance between companies is a cure far worse than the disease. [...] Bulldozer may have performed more like a quad-core chip from Intel, but that doesn’t mean it actually was a quad-core chip. The performance benefits from running the CPU in a quad-core-equivalent configuration weren’t nearly large enough to make that claim. The argument might stand if AMD had marketed BD as having great floating-point performance, but the company’s disclosures and briefings all clearly stated that BD would have just four floating-point units. Anyone buying the system for FPU work would have known that long before hardware shipped. AMD has, in a very real sense, been thoroughly punished for the CPU it brought to market in 2011 — and this lawsuit makes claims that don’t hold up to technical scrutiny

Du definierade SMT, men aldrig vad som var en "kärna", en "core".

Min Q6600 har ju setts som två dualcore-moduler ihoplimmade medan min i5-2500K är "äkta" fyrkärning.

Vad innebär en kärna enligt dig?!

Det hela påverkar som du vet hur man beräknar prestanda per-core och per-thread, vilket vi använt för att tolka AMD Ryzens framtida öde.

Visa signatur

| Fractal Design Define R5| Asrock X399 Fatal1ty| Threadripper 1950X| Noctua NH-U14S TR4-SP3| Corsair Vengeance LPX 8x16GB 3200 C16| be quiet! Straight Power 11 Platinum 1000W| ASUS RTX 3080 10GB Strix| LG OLED 4k 42" C2| Debian Sid| KDE 5.x|

Permalänk
Medlem
Skrivet av Yoshman:

Tja, jag anser att t.ex. FX-8350 är en fyrkärnig CPU med åtta CPU-trådar. AMDs ingenjörer är av samma åsikt och CPUn själv identifierar sig just som att varje modul är en kärna med två trådar. Vidare uppfyller moduldesignen kravet för att kallas SMT, en annan typ av SMT jämfört med Zen, Core m.fl.

Jag bara undrade eftersom du övertygat mig att Bulldozer designen innebär 2st exekveringsenheter/kärna vilket gör att en FX8xxx har 4st kärnor således är det fel i listan på dessa processor, men det intressanta är iofs. inte i blender utan torde vara i cinebench single core testet men det är en annan diskussion.

Visa signatur

ASUS Prime RX 9070 XT 16GB OC | AMD Ryzen R7 5700X3D | Noctua NH-D15 | Asus TUF Gaming B550-Plus | Kingston Fury 2x16GB 3600 CL 16 Renegade | Samsung 990 Pro 1TB | Corsair HX1000i | Fractal Design Define S | Xiaomi G34WQi | Corsair K95 Platinum | Corsair Sabre RGB PRO Wireless | Corsair HS65 |

Permalänk
Medlem
Skrivet av sAAb:

Bara liiite...

Läser man på http://legalnewsline.com/stories/510646458-amd-faces-suit-ove...
och https://www.extremetech.com/extreme/217672-analysis-amd-lawsu...
Du definierade SMT, men aldrig vad som var en "kärna", en "core".

Min Q6600 har ju setts som två dualcore-moduler ihoplimmade medan min i5-2500K är "äkta" fyrkärning.

Vad innebär en kärna enligt dig?!

Det hela påverkar som du vet hur man beräknar prestanda per-core och per-thread, vilket vi använt för att tolka AMD Ryzens framtida öde.

Anledningen till varför AMD fick på fan i domstols delen var ju för att de kallade CPUn 8 "kärnig", vilket den inte är. Verken 6700k eller 2600k, eller 8350 är "8-kärnig", men samtliga är 8 trådiga. Det var mao lite av falsk marknadsföring.

Din Q6600 är 4 kärnig, även om det i underliggande delar är 2st "dual core" (2 kärniga), som är samman-limmade, så är de trots allt 4 kompletta kärnor, precis som din 2500k. Och det enda som skiljer 2600k vs 2500k är att varje kärna har flera aktiva trådar i sig på 2600k, i övrigt är det en identisk CPU. (Där 2500k är en "defekt" 2600k). Du kan mao ha en kärna med en eller flera trådar.

Men en kärna är (enligt mig iaf) är en ensam beräkningsenhet som inte delar sina beräkningssystem med någon/något annan utan kan jobba helt oberoende. Men den kan innehålla dubbletter eller fler av instruktion-set för att kunna parallellt göra flera olika beräkningar, med flera trådar. AMD har 4 kluster där de kallar det som "2 kärnor" i vardera, men detta stämmer inte, då de delar på tex Flyttalsinstruktionen. De är 2 trådar i en kärna (eller som de vill kalla det, kluster), och det är därför de fick på fan.

Mina 2 ören.

Permalänk
Medlem

Jag lade in resultatet från AMD 8320 med klock på 4.0 Ghz eftersom det är vad den levererar i turboläge.
Då är däremot alla 8350 resultat felaktiga eftersom de körs på 4.2 GHz i turboläge och är rapporterade som 4.0 GHz.
Eller är det jag som tänker fel?

Permalänk
Hjälpsam
Skrivet av pelof:

Jag lade in resultatet från AMD 8320 med klock på 4.0 Ghz eftersom det är vad den levererar i turboläge.
Då är däremot alla 8350 resultat felaktiga eftersom de körs på 4.2 GHz i turboläge och är rapporterade som 4.0 GHz.
Eller är det jag som tänker fel?

Tror inte att Turbon kickar in när alla kärnor belastas hårt.
Den kickar in när någon enstaka belastas.

Den här diskussitionen om hur många kärnor en AMD FX8350 har, kommer nog inte avgöras nu heller.

Visa signatur

AMD Ryzen 7 5700X | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/51gntq | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/gwcxfs
HTPC | https://valid.x86.fr/gqtxws |

Permalänk
Medlem
Skrivet av Paddanx:

AMD har 4 kluster där de kallar det som "2 kärnor" i vardera, men detta stämmer inte,

Mina 2 ören.

Teamet bakom Cinebench anser att det stämmer, att varje modul innehåller 2 kärnor.

Jag tycker att alla med processor med bulldozer design ska ändra antalet kärnor till så många moduler som processorn har så får man upp core prestandan lite på dessa processorer.

Visa signatur

ASUS Prime RX 9070 XT 16GB OC | AMD Ryzen R7 5700X3D | Noctua NH-D15 | Asus TUF Gaming B550-Plus | Kingston Fury 2x16GB 3600 CL 16 Renegade | Samsung 990 Pro 1TB | Corsair HX1000i | Fractal Design Define S | Xiaomi G34WQi | Corsair K95 Platinum | Corsair Sabre RGB PRO Wireless | Corsair HS65 |

Permalänk
Medlem
Skrivet av Ratatosk:

Tror inte att Turbon kickar in när alla kärnor belastas hårt.
Den kickar in när någon enstaka belastas.

Den här diskussitionen om hur många kärnor en AMD FX8350 har, kommer nog inte avgöras nu heller.

CPU-Z rapporterade 4.0 GHz när jag körde deras bench cpu under cpu-fliken.
Jag ska prova att avaktivera turboläget ikväll och se om det blir någon skillnad.

Permalänk
Hjälpsam
Skrivet av pelof:

CPU-Z rapporterade 4.0 GHz när jag körde deras bench cpu under cpu-fliken.

Ok skall kolla vad den rapporterar för mig.

Om ni vill kan vi som för XF rapportera 4 kärnor och 8 trådar.

Ser nu att din fyrkärniga FX8320 får 130 per kärna i Linux, inte illa, det är bara, 15-20% från Intels nyare, förstår inte varför så många säger att AMD har dålig singeltrådsprestanda?

Visa signatur

AMD Ryzen 7 5700X | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/51gntq | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/gwcxfs
HTPC | https://valid.x86.fr/gqtxws |

Permalänk
Medlem
Skrivet av Ratatosk:

Ser nu att din fyrkärniga FX8320 får 130 per kärna i Linux, inte illa, det är bara, 15-20% från Intels nyare, förstår inte varför så många säger att AMD har dålig singeltrådsprestanda?

Stop & belägg du måste skilja på det fysiska & logiska.. 4st kärnor men 8st logiska!

Men ja single-core prestandan blir bättre!

Visa signatur

ASUS Prime RX 9070 XT 16GB OC | AMD Ryzen R7 5700X3D | Noctua NH-D15 | Asus TUF Gaming B550-Plus | Kingston Fury 2x16GB 3600 CL 16 Renegade | Samsung 990 Pro 1TB | Corsair HX1000i | Fractal Design Define S | Xiaomi G34WQi | Corsair K95 Platinum | Corsair Sabre RGB PRO Wireless | Corsair HS65 |

Permalänk
Datavetare
Skrivet av sAAb:

Vad innebär en kärna enligt dig?!

Det hela påverkar som du vet hur man beräknar prestanda per-core och per-thread, vilket vi använt för att tolka AMD Ryzens framtida öde.

En kärna för mig: antal kärnor är så många delar du kan plocka ner en krets i och forfarande ha en fungerade enhet. Är precis så SMT är definierat också, trådar som delar kritiska delar kör använder samma kärna.

Ta en modul, säg Excavator. Försök bryt ner den i två funktionella kärnor:

  • Execute: finns två delar (FPU-delen är irrelevant här, i princip alla moderna CPUer, inklusive x86 är fullt funktionella även utan FPU då alla instruktioner kan hanteras av heltalsdelen även om det går betydligt långsammare)

  • Decode: finns två delar

  • Fetch: finns bara en

Notera att saker som cache och TLB är rena optimeringar, går alldeles utmärkt att bygga en fungerade CPU utan dessa. Så dessa delar är irrelevant för om något är en kärna eller ej. Det blir dock långsamt utan cache givet dagens klockfrekvenser.

Vad kan vi då plocka ihop med ovan? Jo, en fungerade kärna då varje sådan måste innehålla fetch+decode+execute. Den klassiska RISC kärnan hade en latens på 3 cykler och spenderade en cykel i varje steg. Idag är latensen ganska mycket högre, men alla CPUer är fortfarande uppdelade i dessa tre delar (man lägger ibland till en fjärde del i out-of-order designer, retire som kommer som sista steg).

D.v.s. med en Excavator modul går det bara att få ihop en komplett CPU-kärna även om man bara tittar på heltalsdelen. AMDs ingenjörer vet detta, vilket är orsaken till att de anser att varje modul är en kärna och orsaken till att de även sett till att CPUn identifierar sig på det sättet mot OS.

PowerPC CPU jag nämnde tidigare har två uppsättningar av decode och fetch (d.v.s. hela front-end är duplicerad) men trådarna delar execute. Ingen har ens funderat på att kalla den för något annat än en CPU med två SMT-trådar per kärna.

Men eftersom detta inlägg ändå inte kommer ändra uppfattning hos något så kan vi alla fall vara överens om: oavsett hur många kärnor det är per modul så implementerar i alla fall varje modul SMT med två trådar! Det går inte att argumentera emot då SMT har en väldefinierad semantik: minst ett steg av fetch, decode och execute ska delas annars är det inte SMT.

Skrivet av Ratatosk:

Ok skall kolla vad den rapporterar för mig.

Om ni vill kan vi som för XF rapportera 4 kärnor och 8 trådar.

Ser nu att din fyrkärniga FX8320 får 130 per kärna i Linux, inte illa, det är bara, 15-20% från Intels nyare, förstår inte varför så många säger att AMD har dålig singeltrådsprestanda?

Finns bara ett enda sätt att mäta enkeltrådprestanda: köra programmet på en CPU-tråd.

Bulldozer-seriens problem har aldrig varit dålig prestanda per tråd när alla trådar är aktiva. Faktum är att i det läget är prestanda per tråd helt i nivå med fyrkärniga Sandy Bridge med HT som använder alla CPU-trådar.

Prestanda per tråd när alla trådar är aktiva är inte samma sak som enkeltrådprestanda, framförallt inte på modeller med SMT.

Problemet med Bulldozer och den stora fördel Intel och numera även Apple har är att ingen kommer nära deras enkeltrådprestanda. Enkeltrådprestanda är kritisk för interaktiva applikationer, att slänga på fler kärnor har i princip noll effekt på dessa.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem

Är detta dåligt?

Verkar som om många med samma CPU får mycket snabbare tid i tabellen.

Kör I7 4770K 4Ghz

EDIT: Win 8.1

Visa signatur

[4770k delid] [1080 EK] [PG348Q] [Custom loop][1.75TB SSD]

Permalänk
Medlem
Skrivet av Yoshman:

Finns bara ett enda sätt att mäta enkeltrådprestanda: köra programmet på en CPU-tråd.

Bulldozer-seriens problem har aldrig varit dålig prestanda per tråd när alla trådar är aktiva. Faktum är att i det läget är prestanda per tråd helt i nivå med fyrkärniga Sandy Bridge med HT som använder alla CPU-trådar.

Prestanda per tråd när alla trådar är aktiva är inte samma sak som enkeltrådprestanda, framförallt inte på modeller med SMT.

Problemet med Bulldozer och den stora fördel Intel och numera även Apple har är att ingen kommer nära deras enkeltrådprestanda. Enkeltrådprestanda är kritisk för interaktiva applikationer, att slänga på fler kärnor har i princip noll effekt på dessa.

Att Apple ledde var nytt för mig. Hittade http://blogs.barrons.com/techtraderdaily/2016/10/21/apples-a1... där de skriver:

Citat:

As a result, Apple doesn’t always have the best performance per square millimeter, writes Gwennap, but it makes up for it in efficiency per clock cycle, thanks to a better “instruction per clock” rate. Gwennap thinks Apple may have performed some design tricks, such as “large branch tables” to optimize “branch prediction” when carrying out instructions.

Interestingly, he finds, too, that “Apple’s new CPU actually compares better against Intel’s (INTC) mainstream x86 cores.” The A10 can deliver “nearly identical performance” to Intel’s “Skylake” generation of “Core” processors. The difference, of course, is that Intel PC chips don’t operate within the battery constraints of the A10.

Gwennap ends on an ominous note for Intel: “Apple’s CPU prowess is beginning to rival Intel’s. In fact, the new Hurricane could easily support products such as the MacBook Air that today use lower-speed Intel chips.”

Då blir ju nästa undran - När kommer Apple med en server-cpu?! De skulle nog vilja, och de har ju pengar att köpa talanger.

Visa signatur

| Fractal Design Define R5| Asrock X399 Fatal1ty| Threadripper 1950X| Noctua NH-U14S TR4-SP3| Corsair Vengeance LPX 8x16GB 3200 C16| be quiet! Straight Power 11 Platinum 1000W| ASUS RTX 3080 10GB Strix| LG OLED 4k 42" C2| Debian Sid| KDE 5.x|

Permalänk
Hjälpsam
Skrivet av Bael:

Stop & belägg du måste skilja på det fysiska & logiska.. 4st kärnor men 8st logiska!

Men ja single-core prestandan blir bättre!

Skrivet av Yoshman:

En kärna för mig: antal kärnor är så många delar du kan plocka ner en krets i och forfarande ha en fungerade enhet. Är precis så SMT är definierat också, trådar som delar kritiska delar kör använder samma kärna.

Ta en modul, säg Excavator. Försök bryt ner den i två funktionella kärnor:

  • Execute: finns två delar (FPU-delen är irrelevant här, i princip alla moderna CPUer, inklusive x86 är fullt funktionella även utan FPU då alla instruktioner kan hanteras av heltalsdelen även om det går betydligt långsammare)

  • Decode: finns två delar

  • Fetch: finns bara en

Notera att saker som cache och TLB är rena optimeringar, går alldeles utmärkt att bygga en fungerade CPU utan dessa. Så dessa delar är irrelevant för om något är en kärna eller ej. Det blir dock långsamt utan cache givet dagens klockfrekvenser.

Vad kan vi då plocka ihop med ovan? Jo, en fungerade kärna då varje sådan måste innehålla fetch+decode+execute. Den klassiska RISC kärnan hade en latens på 3 cykler och spenderade en cykel i varje steg. Idag är latensen ganska mycket högre, men alla CPUer är fortfarande uppdelade i dessa tre delar (man lägger ibland till en fjärde del i out-of-order designer, retire som kommer som sista steg).

D.v.s. med en Excavator modul går det bara att få ihop en komplett CPU-kärna även om man bara tittar på heltalsdelen. AMDs ingenjörer vet detta, vilket är orsaken till att de anser att varje modul är en kärna och orsaken till att de även sett till att CPUn identifierar sig på det sättet mot OS.

PowerPC CPU jag nämnde tidigare har två uppsättningar av decode och fetch (d.v.s. hela front-end är duplicerad) men trådarna delar execute. Ingen har ens funderat på att kalla den för något annat än en CPU med två SMT-trådar per kärna.

Men eftersom detta inlägg ändå inte kommer ändra uppfattning hos något så kan vi alla fall vara överens om: oavsett hur många kärnor det är per modul så implementerar i alla fall varje modul SMT med två trådar! Det går inte att argumentera emot då SMT har en väldefinierad semantik: minst ett steg av fetch, decode och execute ska delas annars är det inte SMT.

Finns bara ett enda sätt att mäta enkeltrådprestanda: köra programmet på en CPU-tråd.

Bulldozer-seriens problem har aldrig varit dålig prestanda per tråd när alla trådar är aktiva. Faktum är att i det läget är prestanda per tråd helt i nivå med fyrkärniga Sandy Bridge med HT som använder alla CPU-trådar.

Prestanda per tråd när alla trådar är aktiva är inte samma sak som enkeltrådprestanda, framförallt inte på modeller med SMT.

Problemet med Bulldozer och den stora fördel Intel och numera även Apple har är att ingen kommer nära deras enkeltrådprestanda. Enkeltrådprestanda är kritisk för interaktiva applikationer, att slänga på fler kärnor har i princip noll effekt på dessa.

Var lite av djävulens advokat där.
Om man nu skall ha en defintion av vad som är en kärna, är nog Fetch, Decode, Execute den vettigaste som jag läst, att kräva egen FPU eller cache för att det skall kallas för en kärna, gör att Intels gamal 386:a had noll kärnor eftersom den saknade FPU.
Jag tror inte att detta med den delade FPU:n är det som brukar kosta mest prestanda för BD, den långa pipelinen och kanske bara en fetch känns mer troligt.

Visa signatur

AMD Ryzen 7 5700X | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/51gntq | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/gwcxfs
HTPC | https://valid.x86.fr/gqtxws |

Permalänk
Medlem
Skrivet av Yoshman:

En kärna för mig: antal kärnor är så många delar du kan plocka ner en krets i och forfarande ha en fungerade enhet. Är precis så SMT är definierat också, trådar som delar kritiska delar kör använder samma kärna. [...] Jo, en fungerade kärna då varje sådan måste innehålla fetch+decode+execute. [...] Prestanda per tråd när alla trådar är aktiva är inte samma sak som enkeltrådprestanda, framförallt inte på modeller med SMT.

Det låter vettigt! Hur tolkar du dina egna data, som finns i Perkkas Google Drive-tabell med Linux, samples = 200 och Intel Xeon E5-2690:

Time Cores Threads Ghz CorePerf ThreadPerf 474 1 1 3.8 111.04 111.04 368 1 2 3.8 143.02 71.51 130 4 4 3.4 113.12 113.12 103 4 8 3.4 142.78 71.39 68 8 8 3.3 111.41 111.41 54 8 16 3.3 140.29 70.15 28 16 32 3.3 135.28 67.64

Det hoppar ju en del. Är det latensen mellan kärnorna vi ser här?

Visa signatur

| Fractal Design Define R5| Asrock X399 Fatal1ty| Threadripper 1950X| Noctua NH-U14S TR4-SP3| Corsair Vengeance LPX 8x16GB 3200 C16| be quiet! Straight Power 11 Platinum 1000W| ASUS RTX 3080 10GB Strix| LG OLED 4k 42" C2| Debian Sid| KDE 5.x|

Permalänk
Medlem
Skrivet av Yoshman:

Enkeltrådprestanda är kritisk för interaktiva applikationer, att slänga på fler kärnor har i princip noll effekt på dessa.

Detta har jag aldrig tänkt på tidigare, men makes sense. Tack

Visa signatur

Ryzen 9 5950X, 32GB 3600MHz CL16, SN850 500GB SN750 2TB, B550 ROG, 3090 24 GB
Har haft dessa GPUer: Tseng ET6000, Matrox M3D, 3DFX Voodoo 1-3, nVidia Riva 128, TNT, TNT2, Geforce 256 SDR+DDR, Geforce 2mx, 3, GT 8600m, GTX460 SLI, GTX580, GTX670 SLI, 1080 ti, 2080 ti, 3090 AMD Radeon 9200, 4850 CF, 6950@70, 6870 CF, 7850 CF, R9 390, R9 Nano, Vega 64, RX 6800 XT
Lista beg. priser GPUer ESD for dummies

Permalänk
Medlem
Skrivet av Ratatosk:

Var lite av djävulens advokat där.
Om man nu skall ha en defintion av vad som är en kärna, är nog Fetch, Decode, Execute den vettigaste som jag läst, att kräva egen FPU eller cache för att det skall kallas för en kärna, gör att Intels gamal 386:a had noll kärnor eftersom den saknade FPU.
Jag tror inte att detta med den delade FPU:n är det som brukar kosta mest prestanda för BD, den långa pipelinen och kanske bara en fetch känns mer troligt.

OffT: Det intressanta blir då om man då fastställer att en modul faktiskt är en kärna om man då kör cinebench single-core test hur mycket belastar man kärnan då 100% eller bara 50%?

OnT: Körde blender på sambons Celeron G1830@stock dvs. 2,8GHz det blev smått fantastiska 4:54.48

Edit: @Yoshman: Spelar mängden internminne samt hastighet & typ. någon roll för Blender om du känner till det dvs.?

Edit2: Ska besöka dottern i morgon & ska försöka köra blender på mitt barnbarns dator som jag byggt till honom den innehåller en G3258:a.

Visa signatur

ASUS Prime RX 9070 XT 16GB OC | AMD Ryzen R7 5700X3D | Noctua NH-D15 | Asus TUF Gaming B550-Plus | Kingston Fury 2x16GB 3600 CL 16 Renegade | Samsung 990 Pro 1TB | Corsair HX1000i | Fractal Design Define S | Xiaomi G34WQi | Corsair K95 Platinum | Corsair Sabre RGB PRO Wireless | Corsair HS65 |

Permalänk
Datavetare
Skrivet av sAAb:

Det låter vettigt! Hur tolkar du dina egna data, som finns i Perkkas Google Drive-tabell med Linux, samples = 200 och Intel Xeon E5-2690:

Time Cores Threads Ghz CorePerf ThreadPerf 474 1 1 3.8 111.04 111.04 368 1 2 3.8 143.02 71.51 130 4 4 3.4 113.12 113.12 103 4 8 3.4 142.78 71.39 68 8 8 3.3 111.41 111.41 54 8 16 3.3 140.29 70.15 28 16 32 3.3 135.28 67.64

Det hoppar ju en del. Är det latensen mellan kärnorna vi ser här?

Är ju precis som förväntat: prestanda per kärna är lite högre när man använder HT medan prestanda per tråd är lägre när man kör HT.

Blender är ett problem som är trivialt att köra parallellt, latens mellan kärnorna är i sådana problem helt irrelevant. Vilket vi bl.a. ser i form av i det närmaste perfekt skalning med CPU-kärnor (P värdet i Amdahls lag är väldigt nära 1,0).

Vi ser ju >95 % skalning även över CPU-sockets, där har man separat RAM-buss och 400-500 cyklers latens mellan kärnor på olika CPU-sockets.

Är därför man måste hålla isär begrepp:

Enkeltrådprestanda kan endast mätas när en tråd per fysisk kärna är aktiv, i praktiken bör man köra programmet i fråga på en kärna.

IPC är rent formellt antal instruktioner som färdigställs per cykel (är fler som passerar front-end men enda som är relevanta är de som faktiskt slutförs).

Finns två intressanta mått på IPC. Dels det man får när en tråd i den fysisk kärnan är aktiverad. Dels det man får när alla SMT-trådar är aktiverad i den fysiska kärnan (IPC är då summan av instruktioner från alla trådar).

IPC i sig är sig inte speciellt relevant, det som spelar roll är produkten mellan IPC och frekvens.

Skrivet av Bael:

OffT: Det intressanta blir då om man då fastställer att en modul faktiskt är en kärna om man då kör cinebench single-core test hur mycket belastar man kärnan då 100% eller bara 50%?

OnT: Körde blender på sambons Celeron G1830@stock dvs. 2,8GHz det blev smått fantastiska 4:54.48
http://i.imgur.com/Q351Haz.jpg

Edit: @Yoshman: Spelar mängden internminne samt hastighet & typ. någon roll för Blender om du känner till det dvs.?

Edit2: Ska besöka dottern i morgon & ska försöka köra blender på mitt barnbarns dator som jag byggt till honom den innehåller en G3258:a.

Titta på detta

när du kör single core Cinebench så är ca 75-80 % av kretsen aktiverad.

Och hur mycket av kretsen som är aktiverad måste ju vara totalt ovidkommande. Om man kör ett program på Haswell/Broadwell som bara adderar flyttal via register så aktiverar man 1/8-del av alla pipelines. Blir den kärnan då helt magiskt 8-kärnig?

Minnesbandbredd måste vara oväsentligt för resultatet i Blender då L1/L2-cache hit-rate är extremt nära 100 %.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av sAAb:

Det hoppar ju en del. Är det latensen mellan kärnorna vi ser här?

Jag insåg nu att om man delar upp tabellen i två delar så blir det ett mönster.

Time Cores Threads Ghz CorePerf ThreadPerf 474 1 1 3.8 111.04 111.04 130 4 4 3.4 113.12 113.12 68 8 8 3.3 111.41 111.41

samt

Time Cores Threads Ghz CorePerf ThreadPerf 368 1 2 3.8 143.02 71.51 103 4 8 3.4 142.78 71.39 54 8 16 3.3 140.29 70.15 28 16 32 3.3 135.28 67.64

I den övre så ser vi en tråd per kärna, men i den undre har vi två trådar per kärna.

Den övre verkar ha fördel då det finns (nästan) tillräckligt så att den inte behöver switcha mellan varje core och performance per tråd ligger högre, på 111.04-113.12 enheter.

I den undre så ligger vi mellan (111.04-71.51)/111.04 = 0.356 och (113.12-67.64)/113.12 = 0.402 dvs ungefär 35-40 % lägre.

Samtidigt i den undre så sjunker performance per tråd så smått ju fler kärnor vi har.

Den här mindre minskningen, från 71.51 till 67.64, borde vara Amdahl här, eller?

Njae, ett försök till tolkning...

EDIT: såg att det kommit ett svar. Så skillnaden mellan den övre och undre tabellen är hyperthreading om jag fattade det rätt.

Visa signatur

| Fractal Design Define R5| Asrock X399 Fatal1ty| Threadripper 1950X| Noctua NH-U14S TR4-SP3| Corsair Vengeance LPX 8x16GB 3200 C16| be quiet! Straight Power 11 Platinum 1000W| ASUS RTX 3080 10GB Strix| LG OLED 4k 42" C2| Debian Sid| KDE 5.x|

Permalänk
Medlem
Skrivet av Yoshman:

Titta på detta
http://abload.de/img/sr2hguql.png
när du kör single core Cinebench så är ca 75-80 % av kretsen aktiverad.

Och hur mycket av kretsen som är aktiverad måste ju vara totalt ovidkommande. Om man kör ett program på Haswell/Broadwell som bara adderar flyttal via register så aktiverar man 1/8-del av alla pipelines. Blir den kärnan då helt magiskt 8-kärnig?

Minnesbandbredd måste vara oväsentligt för resultatet i Blender då L1/L2-cache hit-rate är extremt nära 100 %.

Ok jag kanske missförstår dig men du menar alltså att bulldozerkärnans bägge exekveringsenheter är aktiverade till 75-80% i cinebench single-core test?

Visa signatur

ASUS Prime RX 9070 XT 16GB OC | AMD Ryzen R7 5700X3D | Noctua NH-D15 | Asus TUF Gaming B550-Plus | Kingston Fury 2x16GB 3600 CL 16 Renegade | Samsung 990 Pro 1TB | Corsair HX1000i | Fractal Design Define S | Xiaomi G34WQi | Corsair K95 Platinum | Corsair Sabre RGB PRO Wireless | Corsair HS65 |

Permalänk
Medlem

31.52 sekunder - Sample på 150 -> Sen F12

i6900K @ 4.1

// LZ

Permalänk
Medlem

Lägger in Peppermint 7 Linux på min andra dator Phenom II 1100T 3.3GHz och ska köra en runda Blender senare när jag är klar. Då kan ni göra en egen flik för Linux om ni vill sedan

Visa signatur

Coca Cola missbrukare Förbjuden dryck för mig pga diabetes
AMD älskare
Katt älskare