Hirdetés
- Erőpróbán a Samsung Galaxy A57, és úgy tűnik, visszatér az A70-es sorozat
- Bloomberg: Az iOS 27 a stabilitásra és az AI-ra fókuszál majd
- Alig fél évet hagyott az Oppo a K13 Turbo Pro-nak
- A középkategória egyik legjobb vétele - Dreame L40 Ultra AE
- Akciófigyelő: Százezer forint engedmény a Nothing Phone (3)-ra
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Örömhír: nem spórol Európán a OnePlus
- Bloomberg: Az iOS 27 a stabilitásra és az AI-ra fókuszál majd
- Samsung Galaxy A55 - új év, régi stratégia
- Google Pixel topik
- Bemutatkozott a Poco X7 és X7 Pro
- Erőpróbán a Samsung Galaxy A57, és úgy tűnik, visszatér az A70-es sorozat
- Fotók, videók mobillal
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Samsung Galaxy S23 Ultra - non plus ultra
Új hozzászólás Aktív témák
-
joysefke
veterán
válasz
DrojDtroll
#9337
üzenetére
public static int[,] Get4mIntArrBufferedSpan(string fileName){var sw = new Stopwatch();uint heigth = 2048;uint width = heigth;var result = new int[heigth, width];var buffSize = sizeof(ushort) * heigth;var buff = new byte[buffSize];using (var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.None, bufferSize: 1024 * 1024)){sw.Start();for (int w = 0; w < width; w++){int chunk = 0;while (chunk < buffSize)chunk += fs.Read(buff, chunk, (int)buffSize - chunk);var shortArr = MemoryMarshal.Cast<byte, ushort>(buff);for (int h = 0; h < heigth; h++)result[h, w] = shortArr[h];}sw.Stop();Console.WriteLine($"{nameof(Get4mIntArrBufferedSpan)} took {sw.ElapsedMilliseconds}ms");}return result;}Nekem a fenti kód pontosan ugyanazt az eredmény tömböt dobja ki mint a te első metódusod. A különbség annyi, hogy a itt while ciklus megpróbál egyszerre 4096byteot (2048db ushort) kiolvasni a streamből, a kiolvasott byte tömböt castolja ushort-tömbre azzal pedig feltölti egy oszlopodat.
Szóval itt is rossz a tömb bejárási sorrendje, de a Stream.Read() metódus úgy tűnik, hogy ennyivel hatékonyabb, mint egyenként ushortokat olvasgatni. (nálam pontosan duplázódott a sebesség)
A fenti kódban ha a mátrix bejárási sorrendje "normalizálódna" akkor további 3x lenne gyorsabb. ==> tehát igen, itt a processzor fogja vissza a fájlműveletet

Ebben az esetben lenne értelme egyszerre 2048db elemnél többet is olvasni. Az még dobna rajta.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Apple asztali gépek
- exHWSW - Értünk mindenhez IS
- HiFi műszaki szemmel - sztereó hangrendszerek
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Pécs és környéke adok-veszek-beszélgetek
- Kerékpárosok, bringások ide!
- OTP Bank topic
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- Jövedelem
- AMD Navi Radeon™ RX 7xxx sorozat
- További aktív témák...
- 96GB DDR5/ RTX4080/ Ryzen7 8700F alapú konfig/ garancia/ ingyen foxpost
- 512GB WD SN5000S Gen4 x4/ új, 1év garancia/ Steam Deck ready
- ASUS Zenbook S 13 OLED UM5302TA
- Swift SF16-51T 16" 3K OLED érintő Ultra 9 288V Arc 140V 32GB 1TB ujjlolv IR kam gar
- Sony Bravia XF85 43" 4K Ultra HD 100 Hz LED Android Smart TV (KD-43XF8577)
- GIGA AKCIÓ!!! AKTIVÁLATLAN iPad Air M2 11" WiFi + CELLULAR 512GB!!! KÉK
- BESZÁMÍTÁS! 8TB Western Digital Red Plus SATA HDD meghajtó garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB DDR5 RAM RX 9070 16GB GAMER PC termékbeszámítással
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



