Nu jagar en amerikansk domare fejk-kärnor i AMD FX-serien

Permalänk
Medlem
Skrivet av the squonk:

En intressant detalj är att Windows scheduler initialt behandlade Bulldozer som en äkta åtta kärnig processor, men det skadade dess prestanda. Så Microsoft fick skriva om sin scheduler så att den behandlade Bulldozer som en 4/8, levererades i form av en patch, detta ökade prestandan rejält vilket ju var bra. Men skapade också grunden till detta mål, när puntaren i USA ser i Windows att han bara har en fyrkärnig processor.

Intressant, jag kommer inte ihåg så mycket från Bulldozer-tiden. Det var nog en "dark age"-period för mig. Hur gick diskussionerna här på Swec när detta uppdagades? Skrev Sweclockers stab om detta direkt vid processortester osv?

Visa signatur

Windows 11 Pro | Intel i7 8700 | ASUS Prime Z370-P | Corsair 16GB 3000MHz | ASUS GTX 1080 | Fractal Design Define S | Corsair RM750x | Hyper 212 EVO

Permalänk
Medlem
Skrivet av Joppis:

Intressant, jag kommer inte ihåg så mycket från Bulldozer-tiden. Det var nog en "dark age"-period för mig. Hur gick diskussionerna här på Swec när detta uppdagades? Skrev Sweclockers stab om detta direkt vid processortester osv?

Jag minns inte exakt, men jag vill minnas att det var mycket tydligt ända från början att detta inte var en äkta åttakärnig processor. Så vitt jag vet hävdade ingen här att den skulle prestera som en sådan heller, det som hävdades var att den skulle kunna prestera bättre än med SMT/HT dvs halvvägs till äkta åttakärnig medans SMT/HT bara ger 20-30% prestanda boost överlag. Så, bättre än HT men inte äkta, så gick snacket vad jag minns.

Sen kom ju benchmarks och dom var totalt under isen, så det fanns inte speciellt många försvarare här. Intel ägde som allra mest just då.

Men det var enormt mycket hype innan, i stor del beroende på att Bulldozer blev ständigt försenad så förväntningarna steg.

Visa signatur

|| R9 7950X MSI PRO X670-P WIFI 32GB-DDR5-6400c32 MSI RTX4080 Ventus 3X OC || CORE i9 12900KF MSI Z690 Tomahawk WIFI DDR4 32GB-3600c16 Gear1 TUF RTX3080 OC V2 || R7 5800X3D X570S CH8 Extreme 32GB-3800c18 Gigabyte RTX3080 GAMING OC || R9 5900X(B2) B550-F 32GB-3800c18 EVGA RTX3070 FTW Ultra || R9 3900X X470-Prime Pro 32GB-3200c16 MSI RTX2070 Super ||

Permalänk
Inaktiv
Skrivet av Joppis:

Intressant, jag kommer inte ihåg så mycket från Bulldozer-tiden. Det var nog en "dark age"-period för mig. Hur gick diskussionerna här på Swec när detta uppdagades? Skrev Sweclockers stab om detta direkt vid processortester osv?

Mitt minne är att folk ej brydde sig så mycket. Vi hade sett en extrem utveckling på processorsidan tills då. Och typ alla visste att AMD nya processorer sög, varvid vi bara köpte Intels cpuer och e j brydde sig så mycket om detta.
Jag vill minnas att det var vid runt Intels Core Duo 2 som i princip alla gick över, vilket väl stämmer överens med denna graf: https://wccftech.com/amd-cpu-market-share-jumps-43-in-april-a...

Det som har hänt är en extremt mycket trögare utveckling emot förr som har gjort att folk bryr sig mer på senare tid bryr sig mer om konkurrensen.

Samma sak gällde förövrigt 3DFx grafikkort. Nvida, matrox, ati och vad de hette drog förbi, folk sa bara gäsp till de nya 3dfx grafikkorten och köpte de andra. Inga större diskussioner pågick mer än att alla bra bytte.

Permalänk
Medlem
Skrivet av ToddTheOdd:

@Squallie: Det kan de utelämna om de vill eller så kan de ta med det som de ha valt att göra i det här fallet. Och som tidigare ha sagts så är det absolut inget krav på att det måste vara en FPU i "något" för att det ska räknas som en "core"/kärna. Men jag orkar inte tjafsa om det här längre. Det lär inte avgöras på det här forumet vilket resultatet kommer bli ändå. Men det kan vara bra att kunna sin historia ibland hur utvecklingen har sett ut genom tiderna. Hur olika delar har flyttats in i "CPU" från chipset och ibland kanske gått åt andra hållet osv. Så när är det då en CPU och inte en CPU? Är AMDs nya som de håller på med nu inte CPU längre när de börjat med chiplets? De kommer ju ha en separat I/O-krets som sitter där. Kommer de bli stämda av folk för det nu?

Exakt, mina första datorer hade ingen FPU. Betyder det att de hade 0 kärnor?
Lite senare satt FPU.n i en separat sockel, innan den till slut "flyttade in" på CPU:n.

Visa signatur

Ryzen 7 3800X, Asus Prime X370 Pro, 32 GB LPX 3600, Gainward RTX 3060 Ti Ghost, 7 TB SSD + 4 TB HDD

Permalänk
Medlem

@anon159643: Ja, jag böt skepp när C2D E8400 kom, beställde från Danmark och fick innan den fanns i retail i Sverige. Det var ett enormt lyft från min Athlon X2 4200+ och den klockade till frekvenser man bara kunnat drömma om tidigare. Nästa köp blev logiskt C2Q, och den klockade ännu bättre - OC på mer än 1GHz över standard frekvens var mer regel än undantag. Det var nog här AMD tyckte dom behövde börja kompromissa för att få upp frekvenserna.

Sen höll jag mig med uppgraderingar till Sandy Bridge, som också var en uppenbarelse klockade till över 5GHz och gav typ dubbla fps i alla spel. AMD hade vid den här tiden absolut inget att komma med, som tur var gick grafikkorten hyggligt just då och dom fick kontrakt med både Microsoft och Sony för deras konsoler. Annars hade nog inte AMD funnits längre, det var ändå på håret och dom blev antagligen räddade av oljepengar från Abu Dhabi.

Efter Sandy Bridge har det gått trögt med inkrementella uppdateringar, det har hänt mer på moderkorten med gränssnitt och minne. Och grafikkorten har blivit vansinnigt mycket snabbare. Men ingen, inte ens Intel själva, trodde att AMD skulle komma ikapp. Den här gången gjorde man rätt och anti hypade och lovade upp till 45% bättre prestanda vid samma frekvens och pratade ingenting om åtta kärnor, det blev 55% bättre än Piledriver med äkta 8/16 och det enda som återstår mot Intel är ett frekvens handikapp. Och här är vi idag.

Visa signatur

|| R9 7950X MSI PRO X670-P WIFI 32GB-DDR5-6400c32 MSI RTX4080 Ventus 3X OC || CORE i9 12900KF MSI Z690 Tomahawk WIFI DDR4 32GB-3600c16 Gear1 TUF RTX3080 OC V2 || R7 5800X3D X570S CH8 Extreme 32GB-3800c18 Gigabyte RTX3080 GAMING OC || R9 5900X(B2) B550-F 32GB-3800c18 EVGA RTX3070 FTW Ultra || R9 3900X X470-Prime Pro 32GB-3200c16 MSI RTX2070 Super ||

Permalänk
Hedersmedlem

Jisses. Släpp inte den här killen nära ett grafikkort med dess tusentals "kärnor".

Visst säljs PIC-microkontrollers fortfarande? De har noll flyttalsinstruktioner. Är de också nollkärniga?

Permalänk
Medlem

@ToddTheOdd: Resultatet är det mest intressanta, och även där fanns det med resultat i stämningsansökan som visar tester ifrån Toms Hardware hur AMDs äldre 6kärniga processor var snabbare än deras nya 8 kärninga processor när FPU:n var viktig.

Nu var det bara ett resultat med vad jag kunde se, men som sagt, har man köpt in en AMD 8kärnig processor för just detta ändamål förstår jag att man känner sig vilseledd.
För gemene man som bara spelar är det kanske strunt samma.

@pv2b: Pic finns med FPU också för de applikationer som kräver en. Styr man ett relä så krävs ingen FPU.

Visa signatur

I5 9600k@stock / Cooler Master Evo 212 / Gigabyte Z390 Gaming X / Corsair Vengeance LPX 16GB DDR4 3000MHz / MSI RTX2070 Gaming Z / EVGA 550 BQ / Asus VG27BQ 27" 165Hz

Ryzen 5 5600x@stock / Asus Rog Strix X570-E Gaming / Corsair Vengeance RGB Pro 16GB 3600MHz CL18 / MSI RTX3070 Suprim X / BeQuiet Pure Power 11 600W / Asus VG278Q 27" 144Hz

Permalänk
Medlem
Skrivet av Yoshman:

Ögnade igenom andra länken som @SeF.Typh00n postade, tycker det verkar vara samma mål som tidigare. Man verkar ha ägnat mer än tre år på att avgöra huruvida målsägande har något som uppfyller kraven för att klassas som grupptalan. AMD har som anklagad part då fokuserat på att peka på varför fallet inte ens ska tas upp. T.ex. tyckte AMD att det var omöjligt att konkretisera värdet på skadan, men där gick domstolen på målsägandes idé om att värdet är prisskillnaden mellan AMDs 4C och 8C modell.

Just i tidsaspekten ligger den totalt trasiga saken i amerikanska rättsväsendet. Hur i hela friden ska den processen ta över tre år? Nästa steg är att man i februari ska sätta ett datum när man faktiskt ska börja titta på sakfrågan...

AMDs stora lycka är att målsägaren är ytterst dålig på konkretisera varför det ska anses ha varit vilseledande marknadsföring att kalla FX-8xxx serien för en åtta-kärnig CPU. Ett "bevis" som nämns är att vissa CPU-trådar delar L2$. Cache är enbart en optimering och har definitivt inget att göra med om två trådar tillhör samma kärna eller ej, C2D är på alla tänkbara sätt en dual-core CPU och där delas L2$ (finns även en ram ARM-modeller där L2$ delas mellan par av kärnor).

Vad som rätt snabbt kan sänka AMD i detta fall är att deras ingenjörer gjort en tekniskt klassificering, detta då operativsystem måste veta om CPU-trådar körs på oberoende kärnor eller om de ingår i en grupp av CPU-trådar som implementerar SMT eller den enklare variant som kallas "interleaved multithreading". Alla FX-8xxx presterar sig till OSet som 4C/8T.

Finns så vitt jag vet ingen direkt definition av vad som är en CPU-kärna, däremot finns det definitioner kring vad som är SMT/IMT då det är tekniskt relevant för oss som skriver OS-kärnor. Enkel applicering av bevisteori: antag att FX-8xxx har åtta kärnor, detta är bara sant om CPUn inte implementerar SMT.

Definitionen för SMT är: minst en av prefetch, decode (som tillsammans utgör "front-end") och execution (som utgör "back-end") ska delas mellan CPU-trådar för att att det ska vara SMT/IMT. Om CPUn är superskalär (vilket är fallet för FX-8xxx) är det SMT och inte IMT.

Så i sak blir det då identiskt med att Intel skulle ha marknadsfört t.ex. i7-2600K som åttakärnig. Hoppas ändå AMD vinner detta, mest för att jag inte orkar se ett system där man tydligen kan vinna på att totalt sakna kunskap om något som man sedan hävdar påverkade sitt val av produkt.

Sen kan man ju jämföra prestanda mellan om man kör på alla annonserade kärnor respektive trådar. Att AMD måste annonsera sin FX-8xxx som 4/8 beror på att det redan fanns schemaläggare i operativsystemen för att hantera HT respektive kärnor med delade resurser. Hade man annonserat den som 8/8 hade man fått sämre prestanda.

Kör man samma program på alla trådar får man i fallet på modernare Intel-processorer sämre prestanda jämfört med en tråd/kärna. På FX-8xxx blir det däremot en rejäl förbättring.

Här är en benchmark med GNU-MP kompilerad för respektive arkitektur för några processorer som annonserar sig som att ha HT.

Poäng Optimering - Processor - Trådar x Frekvens 0.18518: nocona-Intel_Pentium_4_CPU_3.20GHz-1x3200.2MHz 0.19916: nocona-Intel_Pentium_4_CPU_3.20GHz-2x3200.2MHz 7.5% bättre prestanda med 2 trådar jämfört med 1. 1.23532: sandybridge-Intel_Core_i5_3230M_CPU-2x3000.1MHz 1.17839: sandybridge-Intel_Core_i5_3230M_CPU-4x2999.9MHz 4.6% sämre prestanda med 4 trådar jämfört med 2. 2.22500: corei7-Intel_Core_i7_CPU_950-4x3060.0MHz 2.30626: corei7-Intel_Core_i7_CPU_950-8x3060.0MHz 3.7% bättre prestanda med 8 trådar jämfört med 4. 3.89069: kabylake-Intel_Core_i7_7700HQ_CPU-4x3399.9MHz 3.48993: kabylake-Intel_Core_i7_7700HQ_CPU-8x3399.9MHz 10.3% sämre prestanda med 8 trådar jämfört med 4. 2.43836: bdver2-AMD_FX_8350_Eight_Core_Processor-4x4000.0MHz 3.96630: bdver2-AMD_FX_8350_Eight_Core_Processor-8x4000.0MHz 64.5% bättre prestanda med 8 trådar jämfört med 4. 14.01648: k8-AMD_Ryzen_Threadripper_1950X_16_Core_Processor-16x3600.0MHz 17.59785: k8-AMD_Ryzen_Threadripper_1950X_16_Core_Processor-32x3600.0MHz 14.0% bättre prestanda med 32 trådar jämfört med 16.

Permalänk
Medlem

Har har vi en kille som myntat ett nytt uttryck, "kärnkränkt".

Visa signatur

..:: trickeh2k ::..
Windows 11 Pro - Ryzen 7 7800X3D - ASUS TUF B650-PLUS - Kingston FURY Beast DDR5 64GB CL36 - MSI MAG A850GL - MSI RTX 4080 VENTUS 3X OC - Acer Predator XB271HU - ASUS VG248QE - QPAD MK-85 (MX-Brown)/Logitech G PRO Wireless - Samsung 960 EVO 250GB, Samsung EVO 860 500GB, SanDisk Ultra II 480GB, Crucial MX500 1TB, Kingston KC3000 2TB - Steelseries Arctic 5 - Cooler Master Masterbox TD500 Mesh V2

Permalänk
Datavetare
Skrivet av SAFA:

Kör man samma program på alla trådar får man i fallet på modernare Intel-processorer sämre prestanda jämfört med en tråd/kärna. På FX-8xxx blir det däremot en rejäl förbättring.

Det är en generalisering som man nog inte ska göra...

Vidare hög prestandavinst från SMT inget kvalitéssignum, i sig utan det kan komma både från en bra SMT implementation men även från en väldigt dålig effektivitet när bara en CPU-tråd används.

Som exempel ser Intels ursprungliga Atom typiskt 50 % boost från SMT, liknande boost ser man även hos PS3 och Xbox360 CPU som också har en väldigt låg effektivitet för enkeltrådprestanda.

Både Core och Zen ser >30 % när man kompilerar, så det är ett exempel där SMT ger väldigt mycket även fast man kör samma program (kompilatorn) på alla kärnor.

Edit: missade att dina siffror hävdade -10 % för Skylake. Har aldrig någonsin sett SMT ger mer än någon enstaka procent negativ effekt för Skylake, det i saker som är väldigt AVX-tungt (ofta stänger man av SMT för sådana laster just av den anledningen).

Så laddade ner GMPbench och fixade till så att man kan köra flera instanser parallellt då benchmark:en är enkeltrådad.

Kört på en i7-6700HQ, får 15 % högre aggregerad prestanda med SMT jämfört med utan. 15 % är relativt låg utdelning, orsaken i detta fall blir rätt uppenbar om man kör perf

Performance counter stats for './runbench': 423728,380208 task-clock (msec) # 1,000 CPUs utilized 3 619 context-switches # 0,009 K/sec 95 cpu-migrations # 0,000 K/sec 1 571 593 page-faults # 0,004 M/sec 1 339 281 306 189 cycles # 3,161 GHz 3 522 182 393 015 instructions # 2,63 insn per cycle 310 997 818 351 branches # 733,956 M/sec 4 377 531 290 branch-misses # 1,41% of all branches 423,840598476 seconds time elapsed

En IPC på 2,63 är jättehögt, så orsaken att man inte får större utväxling av SMT här är att CPUn är fullt kapabel att sysselsätta sig själv redan vid en CPU-tråd per kärna.

Testade även på Sandy Bridge i form av Xeon E5-2690, även där är det positiv utdelning, 14 % högre med SMT.

Noterar att dina resultat för Sandy Bridge och Skylake kommer från mobila enheter, gissar att de trottlade när man kör med alla trådar aktiva!

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 the squonk:

En gång i tiden såldes processorer utan FPU, man var tvungen att köpa till en coprocessor med FPU. Var det inga cpuer som såldes då?

Helt rätt observation, så vill man djävlas så kan man även säga att en Buldozer modul har 2 st heltalskärnor och 1 st flyttalskärna.

Så med 4 moduler blir det 12 kärnor (eller cores på engelska), deffinitionen av en kärna är väldigt flytande så man kan gå ännu längre om man vill och benämna var ALU som en kärna, men där har man nog kommit lite ut i gungflyn.

Visa signatur

Engineer who prefer thinking out of the box and isn't fishing likes, fishing likes is like fishing proudness for those without ;-)
If U don't like it, bite the dust :D
--
I can Explain it to you, but I can't Understand it for you!

Permalänk
Skrivet av CubaCola:

@the squonk: Fast köper du en sådan processor för matteintensiva beräkningar så har du köpt en 4kärnig processor, eftersom det bara finns 4st FPU rent fysiskt. Så därför har du blivit vilseledd utav AMD.

De visar ju även bilder på tidigare AMD-kärnor och de har ju precis som intel en egen FPU per kärna, medans modellen som är med i stämningen har delad FPU.

Edit : Nvidia åkte ju dit med sitt "4GB kort" när det egentligen bara var 3.5GB minne som var av snabba sorten, och användes de sista 0.5GB tappade man prestanda då den var av långsammare typ. Känns lite samma här.

Mycket som är absurt i detta. FP prestanda blev bättre med 8T/4C än tidigare 6T/6C
Men inte INT som är mer beroende av snabb cache än stor cache.
En annan sak- det finns många licenser som bygger på antal kärnor(inte antal trådar)
Är det därför IBM kör hårt med 4T/C även om det borde vara tveksamt?

Permalänk
Avstängd

Vem bryr sig.
Jag var nöjd med min nyinköpta amd fx-8350,året 2012.

Visa signatur

Chassi.Corsair Obsidian 750 D.Moderkort Asus Maximus XI Hero Processor Intel I7 8700K Med kylare Fractal design Celsius S36.Grafikkort MSI Gaming X trio 2080.SSD.1 Samsung 850 Pro 256 GB.SSD.2 Samsung 840 Evo 500 GB till spel.Nätagg Evga 850 G2.Minne 16 gb corsair vengeance 3200 mhtz.Skärm. Asus PG278QR.
2×596 gb.Mekaniska hårddiskar.

Permalänk
Medlem

Ja, AMD har ju redan blvit straffade genom att varan inte blev populär. Prestanda går inte att gömma. Marknaden bestämmer. Varför några Amerikanska advokater nu skall bli miljonärer på detta är ett totalt slöseri med tid och pengar.

Visa signatur

|| R9 7950X MSI PRO X670-P WIFI 32GB-DDR5-6400c32 MSI RTX4080 Ventus 3X OC || CORE i9 12900KF MSI Z690 Tomahawk WIFI DDR4 32GB-3600c16 Gear1 TUF RTX3080 OC V2 || R7 5800X3D X570S CH8 Extreme 32GB-3800c18 Gigabyte RTX3080 GAMING OC || R9 5900X(B2) B550-F 32GB-3800c18 EVGA RTX3070 FTW Ultra || R9 3900X X470-Prime Pro 32GB-3200c16 MSI RTX2070 Super ||

Permalänk
Medlem
Skrivet av Yoshman:

Det är en generalisering som man nog inte ska göra...

Vidare hög prestandavinst från SMT inget kvalitéssignum, i sig utan det kan komma både från en bra SMT implementation men även från en väldigt dålig effektivitet när bara en CPU-tråd används.

Som exempel ser Intels ursprungliga Atom typiskt 50 % boost från SMT, liknande boost ser man även hos PS3 och Xbox360 CPU som också har en väldigt låg effektivitet för enkeltrådprestanda.

Både Core och Zen ser >30 % när man kompilerar, så det är ett exempel där SMT ger väldigt mycket även fast man kör samma program (kompilatorn) på alla kärnor.

Ok, men ska FX-8xxx räknas som 4C/8T så har AMD gjort ett väldigt dåligt jobb att fylla exekveringsenheterna med jobb. På atom-n270 har jag 41% boost med SMT i detta program.
Sen har en kompilator en väldigt varierande instruktionsmix jämfört mot gnu-mp multiply så klart man får mer vinst där. Tänker lite på när man körde dual-celeron med 100 MHz FSB, då kanske man fick 50% extra prestanda om man körde samma program på båda processorerna då minnesbandbredden begränsade.

Skrivet av Yoshman:

Edit: missade att dina siffror hävdade -10 % för Skylake. Har aldrig någonsin sett SMT ger mer än någon enstaka procent negativ effekt för Skylake, det i saker som är väldigt AVX-tungt (ofta stänger man av SMT för sådana laster just av den anledningen).

Så laddade ner GMPbench och fixade till så att man kan köra flera instanser parallellt då benchmark:en är enkeltrådad.

Kört på en i7-6700HQ, får 15 % högre aggregerad prestanda med SMT jämfört med utan. 15 % är relativt låg utdelning, orsaken i detta fall blir rätt uppenbar om man kör perf

Performance counter stats for './runbench': 423728,380208 task-clock (msec) # 1,000 CPUs utilized 3 619 context-switches # 0,009 K/sec 95 cpu-migrations # 0,000 K/sec 1 571 593 page-faults # 0,004 M/sec 1 339 281 306 189 cycles # 3,161 GHz 3 522 182 393 015 instructions # 2,63 insn per cycle 310 997 818 351 branches # 733,956 M/sec 4 377 531 290 branch-misses # 1,41% of all branches 423,840598476 seconds time elapsed

En IPC på 2,63 är jättehögt, så orsaken att man inte får större utväxling av SMT här är att CPUn är fullt kapabel att sysselsätta sig själv redan vid en CPU-tråd per kärna.

Testade även på Sandy Bridge i form av Xeon E5-2690, även där är det positiv utdelning, 14 % högre med SMT.

Noterar att dina resultat för Sandy Bridge och Skylake kommer från mobila enheter, gissar att de trottlade när man kör med alla trådar aktiva!

Skillnaden är väl att även "runbench" kör en ganska varierad instruktionsmix. Kör jag den på min i7-6600U får jag 14% vinst med 4 trådar i stället för 2. Med det andra programmet som nästan bara kör gmp-multiply tappar jag 8.5% med 4 trådar istället för 2. Har även kört på en maskin med 2 x haswell-intel_Xeon_CPU_E5_2637_v3. Tappar där 8.7% med 16 trådar i stället för 8. Så att throtteling skulle vara förklaringen är inte troligt. Fick f.ö. med "runbench" 92C på 6600U vid 2 trådar och 93C som max vid 4 så ingen större skillnad. Med det andra programmet på 4 trådar ligger tempen på runt 80-83C så är väl så att det räcker med en tråd för att få alla använda exekveringsenheter upptagna.

Permalänk
Datavetare
Skrivet av SAFA:

Ok, men ska FX-8xxx räknas som 4C/8T så har AMD gjort ett väldigt dåligt jobb att fylla exekveringsenheterna med jobb. På atom-n270 har jag 41% boost med SMT i detta program.
Sen har en kompilator en väldigt varierande instruktionsmix jämfört mot gnu-mp multiply så klart man får mer vinst där. Tänker lite på när man körde dual-celeron med 100 MHz FSB, då kanske man fick 50% extra prestanda om man körde samma program på båda processorerna då minnesbandbredden begränsade.

Skillnaden är väl att även "runbench" kör en ganska varierad instruktionsmix. Kör jag den på min i7-6600U får jag 14% vinst med 4 trådar i stället för 2. Med det andra programmet som nästan bara kör gmp-multiply tappar jag 8.5% med 4 trådar istället för 2. Har även kört på en maskin med 2 x haswell-intel_Xeon_CPU_E5_2637_v3. Tappar där 8.7% med 16 trådar i stället för 8. Så att throtteling skulle vara förklaringen är inte troligt. Fick f.ö. med "runbench" 92C på 6600U vid 2 trådar och 93C som max vid 4 så ingen större skillnad. Med det andra programmet på 4 trådar ligger tempen på runt 80-83C så är väl så att det räcker med en tråd för att få alla använda exekveringsenheter upptagna.

"Throtteling" var en illa vald beskrivning, borde sagt "kan vara en effekt av dynamisk frekvenshanteringen". Med perf stat på Linux kan man få genomsnittlig frekvens för en körning. Kör jag med i7-6700HQ systemet, som har en maxfrekvens på 3,5 GHz och 45 W TDP är det samma frekvens oavsett om man använder HT eller ej. På min i7-8559U NUC (28 W TDP med maxfrekvens på 4,5 GHz) skiljer det 200-400 MHz mellan att köra med HT eller ej.

Testade att köra enbart multiplikationsfallet. Ja, blir en klart mindre effekt av SMT där men fortfarande ~8 % (i stället för 15 %).

Kollade cache-missar med perf stat, är >98 % L1D$ hit-rate. Enda fallet HT i praktiken ger sämre prestanda (och då typiskt några enstaka procent) är för fall där trådarna börjar fajtas om CPU-cache, effektiva cache-storleken per CPU-tråd halveras ju när båda trådarna är aktiva!

I detta fall blir det ju i praktiken en fysisk omöjlighet för SMT att ge en negativ effekt, värsta fallet borde aldrig kunna bli värre än 0 % boost med en sådan L1D$ hit-rate.

BTW: har nu även testat på min Zen-maskin och den ligger ju väldigt nära Skylake, vilket också är helt förväntat för heltalstunga saker. Är för flyttalstunga saker som inte använder SSE/AVX där Zen brukar kunna få en större boost från SMT jämfört med Core, detta då "back-end" kapacitet är klart bättre i Zen för den typen av laster.

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:

"Throtteling" var en illa vald beskrivning, borde sagt "kan vara en effekt av dynamisk frekvenshanteringen". Med perf stat på Linux kan man få genomsnittlig frekvens för en körning. Kör jag med i7-6700HQ systemet, som har en maxfrekvens på 3,5 GHz och 45 W TDP är det samma frekvens oavsett om man använder HT eller ej. På min i7-8559U NUC (28 W TDP med maxfrekvens på 4,5 GHz) skiljer det 200-400 MHz mellan att köra med HT eller ej.

Testade att köra enbart multiplikationsfallet. Ja, blir en klart mindre effekt av SMT där men fortfarande ~8 % (i stället för 15 %).

Kollade cache-missar med perf stat, är >98 % L1D$ hit-rate. Enda fallet HT i praktiken ger sämre prestanda (och då typiskt några enstaka procent) är för fall där trådarna börjar fajtas om CPU-cache, effektiva cache-storleken per CPU-tråd halveras ju när båda trådarna är aktiva!

I detta fall blir det ju i praktiken en fysisk omöjlighet för SMT att ge en negativ effekt, värsta fallet borde aldrig kunna bli värre än 0 % boost med en sådan L1D$ hit-rate.

BTW: har nu även testat på min Zen-maskin och den ligger ju väldigt nära Skylake, vilket också är helt förväntat för heltalstunga saker. Är för flyttalstunga saker som inte använder SSE/AVX där Zen brukar kunna få en större boost från SMT jämfört med Core, detta då "back-end" kapacitet är klart bättre i Zen för den typen av laster.

Kört lite mer tester på i7-6600U maskinen.

Att den klockar ner sig kan ha mycket med saken att göra, såg att klockan varierade en del under körningen fast temperaturerna var långt från kritiska. Dock förstår jag inte varför CPU-temp tillåts gå upp till 94C vid flyttalsberäkningar för att sen klocka ned till ca 82C när beräkningarna över går till GNU-MP.

I bilden nedan visas förhållandet mellan fyra trådar och två trådar för de olika delresultaten:

Längst till vänster används "double", sen "lång double", sen gnu-mp. Längst till höger ca 50 000 bitars precision. Mellan resultat 52 till 103 är 4-trådsprestandan 84% av 2-trådsprestandan.
Då testet tar ca 1/2 timme att köra tycker man temperaturerna borde ha stabiliserats.

Ser ut att vara problem runt 200 bitars precision, så körde en koll med 200, double, 200:

Två trådar: Performance counter stats for './mz-bench-test2 2': 365948.111449 task-clock:u (msec) # 2.000 CPUs utilized 0 context-switches:u # 0.000 K/sec 0 cpu-migrations:u # 0.000 K/sec 111 page-faults:u # 0.000 K/sec 1,090,321,100,605 cycles:u # 2.979 GHz 2,981,893,658,413 instructions:u # 2.73 insn per cycle 428,078,615,058 branches:u # 1169.780 M/sec 607,884,422 branch-misses:u # 0.14% of all branches 182.984536272 seconds time elapsed Fyra trådar: Performance counter stats for './mz-bench-test2 4': 760765.884162 task-clock:u (msec) # 3.974 CPUs utilized 0 context-switches:u # 0.000 K/sec 0 cpu-migrations:u # 0.000 K/sec 188 page-faults:u # 0.000 K/sec 2,267,609,417,236 cycles:u # 2.981 GHz 2,952,462,759,686 instructions:u # 1.30 insn per cycle 406,774,035,128 branches:u # 534.690 M/sec 536,377,143 branch-misses:u # 0.13% of all branches 191.428416405 seconds time elapsed Så i detta fallet något högre frekvens med 4 trådar men ipc bara 1.30 mot 2.73 så blir i medel 1.30*4 / (2.73*2) * 2979/2981 = 0.952 så ca 4.8% sämre med 4 trådar.

Så här blev resultatet av den körningen:

Nu när jag ser detta resultat så inser jag att jag kört det senaste mot den generiska gnu-mp som följer med distributionen men den översta bilden kommer från en körning med en statisk länkad gnu-mp som är kompilerad just för aktuell arkitektur så det kan även göra en viss skillnad.

Så som jag tolkar det hela finns det fall där hyperthreading ger sämre prestanda.

Permalänk
Quizmästare Gävle 2022

Men ni vet att svaren kommer Zen eller

Visa signatur