Spec rasar mot Intels optimeringar

Permalänk
Medlem
Permalänk
Medlem

Påminner om hur många tillverkare av Android-telefoner använde(r?) process-namnet på syntetiska tester för att överklocka cpu och gpu - ofta mer än vad den normalt klarar av - för att försöka lura potentiella kunder.

(Gäller också iPhones försprång i syntetiska tester, då de testerna inte ens är skapade från samma kodbas och skrivna i objective-c, istället för Android...)

Permalänk
Medlem

Det är så fult när de håller på så här.

Visa signatur

Skriv jätteintressant information här.

Permalänk
Medlem
Skrivet av Yoshman:

Har aldrig tänkt på hur stor andel av SPEC som använder sig av Fortan (33 % av deltesterna använder det språket), när skrev någon här på SweC något i Fortran sist? Det förklarar ändå varför bl.a. Intel fortfarande investerar i något jag själv senast kom i kontakt med i x-jobbet 1997...

Språket är ju högst relevant inom akademin, främst inom fysik och andra discipliner baserat på tillämpad fysik såsom klimatmodelleribg, oceanografi osv. Finns bra paket för numerisk analys och FEM och språket är effektivt ur prestandasynpunkt. I CFP2017 ser man att dey är just den typen av tillämpningar som SPEC skrivit siba benchmarkverktyg i FORTRAN.

Jag har flera vänner som dagligen skriver FORTRAN, samtliga akademiker. Men arbetar man i industrin lär man aldrig stöta på det.

Permalänk
Datavetare
Skrivet av lhugo:

Språket är ju högst relevant inom akademin, främst inom fysik och andra discipliner baserat på tillämpad fysik såsom klimatmodelleribg, oceanografi osv. Finns bra paket för numerisk analys och FEM och språket är effektivt ur prestandasynpunkt. I CFP2017 ser man att dey är just den typen av tillämpningar som SPEC skrivit siba benchmarkverktyg i FORTRAN.

Jag har flera vänner som dagligen skriver FORTRAN, samtliga akademiker. Men arbetar man i industrin lär man aldrig stöta på det.

Läste på lite på hur/var Fortran används idag, är tydligen väldigt koncentrerat till vissa typer av HPC laster. Precis som du skriver vissa fysiktillämpningar och det är tydligen helt dominerande för klimatmodellering.

Givet vad SPECfp testar känns det väldigt riktad just mot de fallen, så säker en bra benchmark för den marknaden. För "normala" servermarknaden är SPECint betydligt viktigare (och där var det ju bara ett deltest som använda Fortran).

Anledningen till att Fortran lever kvar verkar ju vara samma som varför C och C++ fortfarande är så stora (trots deras brister, t.ex. att >70 % av alla säkerhetshål kommer av buggar som de flesta nyare språk inte ens skulle kompilera): det finns så enormt mycket existerande programvara skrivet, inte vettigt att skriva om den.

Av det jag läste verkar HPC-världen i praktiken bara använda Fortran och C++. På 90-talet hade Fortran en fördel det nästan alltid gav snabbare program jämfört med motsvarande i C++, men idag verkar kompilatortekniken och förändringar/förbättringar gjort att det är rätt sällsynt att Fortran blir snabbare (men det är fortfarande väldigt nära). Var precis så jag använda Fortran: skrev aldrig något i det, utan gjorde mina saker i C++ men använda färdiga program/funktioner/bibliotek skrivna i Fortran (molekylsimuleringar med kvantkemi, gissningsvis används Fortran mycket där än idag).

Fortran lär rimligen vara betydligt enklare att jobba med för icke-programmerare då sättet det hanterar array:er, speciellt multidimensionella array:er, är långt mer likt "vanlig matematik" jämfört med C++ (först C++23 som knappt nått ut än som fått något liknande som del av standarden). Fortran och Matlab har tydligen samma syntax för mycket relaterat till arrayer.

Kanske egentligen inget att bli förvånad över. Cobol är ju fortfarande mer relevant än bankerna nog önskat sig i den världen. För HPC-världen är tydligen Julia det "moderna" Fortran, men även om det skulle ta över lär Fortran fortsätta vara relevant under lång tid framöver.

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:

Läste på lite på hur/var Fortran används idag, är tydligen väldigt koncentrerat till vissa typer av HPC laster. Precis som du skriver vissa fysiktillämpningar och det är tydligen helt dominerande för klimatmodellering.

Givet vad SPECfp testar känns det väldigt riktad just mot de fallen, så säker en bra benchmark för den marknaden. För "normala" servermarknaden är SPECint betydligt viktigare (och där var det ju bara ett deltest som använda Fortran).

Anledningen till att Fortran lever kvar verkar ju vara samma som varför C och C++ fortfarande är så stora (trots deras brister, t.ex. att >70 % av alla säkerhetshål kommer av buggar som de flesta nyare språk inte ens skulle kompilera): det finns så enormt mycket existerande programvara skrivet, inte vettigt att skriva om den.

Av det jag läste verkar HPC-världen i praktiken bara använda Fortran och C++. På 90-talet hade Fortran en fördel det nästan alltid gav snabbare program jämfört med motsvarande i C++, men idag verkar kompilatortekniken och förändringar/förbättringar gjort att det är rätt sällsynt att Fortran blir snabbare (men det är fortfarande väldigt nära). Var precis så jag använda Fortran: skrev aldrig något i det, utan gjorde mina saker i C++ men använda färdiga program/funktioner/bibliotek skrivna i Fortran (molekylsimuleringar med kvantkemi, gissningsvis används Fortran mycket där än idag).

Fortran lär rimligen vara betydligt enklare att jobba med för icke-programmerare då sättet det hanterar array:er, speciellt multidimensionella array:er, är långt mer likt "vanlig matematik" jämfört med C++ (först C++23 som knappt nått ut än som fått något liknande som del av standarden). Fortran och Matlab har tydligen samma syntax för mycket relaterat till arrayer.

Kanske egentligen inget att bli förvånad över. Cobol är ju fortfarande mer relevant än bankerna nog önskat sig i den världen. För HPC-världen är tydligen Julia det "moderna" Fortran, men även om det skulle ta över lär Fortran fortsätta vara relevant under lång tid framöver.

Ja även inom astronomi är FORTRAN i särställning. Jag tror egentligen (utöver ren prestanda) att det är självuppfyllande just på grund av mängden färdiga verktyg som låser framtida forskare till gamla språk. Hissnande egentligen att ett 50-talsspråk, även om det fortsatt att utvecklas, fortfarande är högst relevant nästan 70 år senare.

Gällande säkerhetshål och buggar håller jag med dig. Det är inte vettigt att skriva om gammal kod. Det är mig veterligen alltid utdata efter stt programmet körts som är relevant för vetenskapluga rillämpningar ändå. De buggar som finns betraktas nog i praktiken som "features" i språket idag.

Att MATLAB och FORTRAN i mångt och mycket delar syntax för tensorberäkningar och dylikt tror jag är bidragande till att hålla FORTRAN relevant. Vet bara hur det ser ut i Göteborg men här är i vart fall i första hand MATLAB vad som lärs ut och används på fysikutbildningarna på Chalmers.

Permalänk
Skrivet av lhugo:

Ja även inom astronomi är FORTRAN i särställning. Jag tror egentligen (utöver ren prestanda) att det är självuppfyllande just på grund av mängden färdiga verktyg som låser framtida forskare till gamla språk. Hissnande egentligen att ett 50-talsspråk, även om det fortsatt att utvecklas, fortfarande är högst relevant nästan 70 år senare.

Gällande säkerhetshål och buggar håller jag med dig. Det är inte vettigt att skriva om gammal kod. Det är mig veterligen alltid utdata efter stt programmet körts som är relevant för vetenskapluga rillämpningar ändå. De buggar som finns betraktas nog i praktiken som "features" i språket idag.

Att MATLAB och FORTRAN i mångt och mycket delar syntax för tensorberäkningar och dylikt tror jag är bidragande till att hålla FORTRAN relevant. Vet bara hur det ser ut i Göteborg men här är i vart fall i första hand MATLAB vad som lärs ut och används på fysikutbildningarna på Chalmers.

För den.som kan matlab så är det inte svårt att lära sig fortran. Jag stöter ibland på forskare och studenter som kör sina beräkningar på fortrankompilerad kod för att få max prestanda.

Vad der gäller cobol så är det sen länge ersatt med SQL så man ser sällan någon aktiv cobolkod.

Permalänk
Datavetare
Skrivet av Megaforce:

För den.som kan matlab så är det inte svårt att lära sig fortran. Jag stöter ibland på forskare och studenter som kör sina beräkningar på fortrankompilerad kod för att få max prestanda.

Vad der gäller cobol så är det sen länge ersatt med SQL så man ser sällan någon aktiv cobolkod.

SEB COBOL Academy

"Är du i början av din karriär som utvecklare och intresserad av att utveckla framtidens IT-system? SEB COBOL Academy är ett fantastiskt tillfälle för dig som har intresse för IT och bankbranschen, där du får möjligheten att utvecklas till en vass COBOL-utvecklare."

Det används än och man lär kunna jobba med det ett helt yrkesliv (och om man väljer att göra det lär man få bra kompensation...).

Visa signatur

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

Permalänk
Skrivet av Yoshman:

SEB COBOL Academy

"Är du i början av din karriär som utvecklare och intresserad av att utveckla framtidens IT-system? SEB COBOL Academy är ett fantastiskt tillfälle för dig som har intresse för IT och bankbranschen, där du får möjligheten att utvecklas till en vass COBOL-utvecklare."

Det används än och man lär kunna jobba med det ett helt yrkesliv (och om man väljer att göra det lär man få bra kompensation...).

Det stämmer inte. Är f.d cobolutvecklare men det är väldigt få jobb som utvecklare i den branchen och lönerna är för låga. Det är främst de som är specialister i de verktyg och databaser som används som tjänar något. Cobol är för övrigt ganska enkelt språk så det är inget problem för en utvecklare att lära sig det men man får inte mycket högre lön för den kompetensen.

Permalänk
Datavetare
Skrivet av Megaforce:

Det stämmer inte. Är f.d cobolutvecklare men det är väldigt få jobb som utvecklare i den branchen och lönerna är för låga. Det är främst de som är specialister i de verktyg och databaser som används som tjänar något. Cobol är för övrigt ganska enkelt språk så det är inget problem för en utvecklare att lära sig det men man får inte mycket högre lön för den kompetensen.

Har själv ingen förstahandsinfo på det, men läst att så är fallet
(läst/hört liknande påståenden från andra håll)

"Enligt en rapport från ITWorld får unga programmerare som gått COBOL-utbildning ungefär 85 000 kr mer i årslön under sina första jobb än sina Java- och .NET-vänner. Detta trots att många ser COBOL som en programmeringskvarleva från forna affärssystem."

Sen lär mycket handla om utbud och efterfrågan. Och just bankerna lär vara exempel på några som har resurserna att betala bra om det handlar om något de måsta komma åt, men kanske inte sådan brist då?

Att Cobol är enkelt var väl lite ett av dess designmål när det skapades?

Men ja: vi kan i alla fall konstatera att noll SPECint och noll SPECfp fall använder Cobol, så Intel behöver inte "optimera" deras Cobol-kompilator om de har en sådan

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 CrazyDriver:

Men...om en processor är optimerad för att få bra prestanda i ett visst test så är det väl snarare testerna som är dåliga om de inte testar processorerna på ett sätt som är relevanta i ett verkligt scenario?

Skrivet av Roger W:

Tror du missförstår? Det står inte nånstans att testet inte är relevant?
Hela grejen är att det här är ett benchmarkprogram som är byggt för att kunna jämföra olika CPU:ers relativa generella prestanda.
Då kan inte intel gå in och göra optimeringar (i kompilatorn) som är specifika till exakt bara det här testprogrammet!

Tanken är ju att du som konsument ska kunna jämföra resultat och extrapolera det generellt till vad du kan förvänta dig om du bygger ett liknande program själv… och det kommer förstås inte stämma om intel optimerar specifikt för testprogrammet!
Intel kommer ju inte handknacka optimeringar för ditt program så du får motsvarande prestandaboost…

Skrivet av Swedishchef_90:

Jag tror du missförstår honom.

Real life kompilator är 100m häck
Denna kompilator testar 60m sprint

Intel tränar för 60m sprint och blir bättre. Men är lika dålig på 100m häck

Iaf så jag förstår honom

LOL! Vilken röra! En sak jag tänker på, är inte benchmarkingen som Swecklockers kör deras "normala jobb"? Man kanske ska köra en benchmark som testar olika benchmarking. För att få ett mer syntetiskt test?

Visa signatur

Server: Fractal design Define 7 XL | AMD Ryzen 7 5800X 8/16 | ASUS ROG CROSSHAIR VIII DARK HERO | 64GB Corsair @ 3000MHz | ASUS Radeon RX 460 2GB | Samsung 960 PRO 512 GB M.2 | 2x 2TB Samsung 850 PRO SSD | 6x Seagate Ironwolf Pro 10TB
WS: Phantex Entoo Elite | AMD Ryzen Threadripper 1950X 16/32 | ASUS Zenith extreme | 128GB G.Skill @ 2400MHz | ASUS Radeon HD7970 | 3x 2TB Samsung 960PRO M.2 | 6x Seagate Ironwolf Pro 10 TB
NEC PA301W 30" @ 2560x1600 | Linux Mint 21.3 Cinnamon

Permalänk
Medlem
Skrivet av andelf:

(Gäller också iPhones försprång i syntetiska tester, då de testerna inte ens är skapade från samma kodbas och skrivna i objective-c, istället för Android...)

Beror väl på vilket test det är... Anandtech brukade ju köra SPEC-tester, då är det definitivt precis samma kod. Vad gäller Geekbench så är det välkänt att äldre versioner had väldigt olika tester på olika plattformar (Geekbench 2 gjorde helt enkelt mindre jobb på mobiler, eftersom de inte hade minne nog att köra hela testet på den tiden), men det är ett historiskt problem. Idag är Geekbench ett mycket bättre verktyg.

(Sen skall sägas att Objective-C är allt annat än snabbt, så det hade knappast varit en fördel för iPhone om de nu vore skrivna i olika språk.)

Skrivet av Megaforce:

Vad der gäller cobol så är det sen länge ersatt med SQL så man ser sällan någon aktiv cobolkod.

Finns tyvärr en del Cobol kvar på mitt jobb...

Visa signatur

5900X | 6700XT