- Leépíti a Sony az európai piacot?
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy S25 - végre van kicsi!
- Samsung Galaxy Watch6 Classic - tekerd!
- A kínai gyártók 3D arcazonosítással kísérleteznek
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Huawei Watch Fit 3 - zöldalma
- Nagyobb kijelzőt kap a CMF Watch 3 Pro
- Realme GT 2 - aláírjuk
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
Új hozzászólás Aktív témák
-
drkbl
őstag
Reordering példák pár CPU típusra
Különösen érdekes az x86 vs. ARM rész.
-
flugi
tag
A GPU kódot ha kézzel lapogatjuk ki (memóriaterhelés ritkítás aritmetika közé), akkor gyorsul. Ez alátámasztja azt a heurisztikus állásfoglalást is, hogy a GPU stream processzor nem rendez át, mert az sokat bonyolít a magon, és sok a mag. Ezt a feladatot a driver végzi el, amikor előállítja az adott architektúra számára kedves átrendezést fordítási időben. (a fenti kísérletet nVidia GPU-n, assemblerrel csináltuk)
Az OpenCL és a driver adatfüggőséget kezel, ahol is nem átrendezhető két művelet, ha az egyik írja a másik bemenetét.
-
flugi
tag
Az out of order képességnek ügyelnie kell arra, hogy ne legyen megváltoztató hatása. Nem ütemezhet át olyan utasításokat, amik egymás eredményeit olvassák. Ha vesszük az a+=b; a+=c; dataflow-t, akkor az kifejtve matematikailag egyenértékű kellene legyen az a := a + b + c -vel, de sajnos az utasítások sorrendje pontosan a számábrázolási pontatlanságok miatt számít.
Két számnál még nem különösebben érdekes ez, de ha vesszük a következő példát:
#include <iostream>
#include <iomanip>
#include <vector>
using namespace std;
int main()
{
int N = 100;
float f = 1.0;
vector<float> szamok(N);
for (int i=1;i<N;i++) {
szamok[i] = f;
f*=.8;
}
float sum = 0.0;
for (int i=0;i<N;i++) {
sum += szamok[i];
}
cout <<setprecision(16) << sum << endl;
sum = 0.0;
for (int i=0;i<N;i++) {
sum += szamok[N-i-1];
}
cout <<setprecision(16) << sum << endl;
return 0;
}Akkor az adott mértani sorozat összege 5-höz tart, elegendő darabszámú sorozattag összege a float precizitás erejéig pontosan ki is adja az eredményt (a második eredmény 5), míg ha rossz sorrendben adjuk össze a számokat, akkor az eredmény 4.99999.
Ebből következően hiába igaz, hogy a matematikában az összeadás kommutatív, float és double számokra az ADD gépi utasítás nem az.
Új hozzászólás Aktív témák
Hirdetés
- Építő/felújító topik
- Újra instabilitásba futott a Raptor Lake generációt
- Sütés, főzés és konyhai praktikák
- Világ Ninjái és Kódfejtői, egyesüljetek!
- PROHARDVER! feedback: bugok, problémák, ötletek
- Leépíti a Sony az európai piacot?
- Honda topik
- Eredeti játékok OFF topik
- Az új vezér szerint már nincs a legjobb tíz chipgyártó között az Intel
- Büszke apukák és anyukák topikja
- További aktív témák...
- BESZÁMÍTÁS! SAPPHIRE Pulse OC RX 9060 XT 16GB GDDR6 videokártya 27% áfa 3 év garancia
- GIGABYTE GTX 1050 OC 2GB videókártya
- MSI GeForce VENTUS 3X RTX 3070 Ti 8GB OC GDDR6X 256bit videokártya
- Asus STRIX GTX 1080 Ti 11GB GDDR5X Videokártya!
- ROG Astral GeForce RTX 5080 16GB GDDR7 OC Edition - 32 HÓNAP IPON GARANCIA
- BESZÁMÍTÁS! Gigabyte B365M i5 8500 16GB DDR4 512GB SSD GTX 1060 3GB Rampage SHIVA FSP 400W
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
- LG 27GR95QE - 27" OLED / QHD 2K / 240Hz & 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
- Azonnali készpénzes Microsoft XBOX Series S és Series X felvásárlás személyesen/csomagküldéssel
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest