abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.12 oznámil Linus Torvalds vydání Linuxu 6.13. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Odstraněn byl souborový systém ReiserFS.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    19. ledna 2038 přeteče hodnota time_t na 32bitových systémech, na vyřešení problému roku 2038 (Y2K38) tedy zbývá 13 let. Např. Debian v uplynulém roce přešel na 64bitový čas. Bernhard Wiedemann z openSUSE sdílí chyby v sestavení rozšířeného softwaru.

    Fluttershy, yay! | Komentářů: 0
    včera 15:44 | Nová verze

    Byla vydána druhá opravná verze 21.2 v dubnu loňského roku vydané verze 21 multimediálního centra Kodi (dříve XBMC, Wikipedie) s kódovým označením Omega.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    TikTok ve Spojených státech v sobotu večer místního času přerušil činnost. Uživatelé čínskou firmou vlastněné sociální sítě dostali zprávu, že aplikaci kvůli zákazu nelze používat. TikTok je momentálně nedostupný v obchodech s aplikacemi Google Play a App Store. Podle zákona přijatého loni a potvrzeného v pátek soudem měla platforma do dneška přerušit spojení se svou mateřskou společností ByteDance, která sídlí v Číně, nebo činnost v

    … více »
    Ladislav Hagara | Komentářů: 2
    18.1. 23:00 | Nová verze

    Wings 3D, tj. open source 3D modelovací program naprogramovaný v programovacím jazyce Erlang zaměřený na modelování pomocí subdivision a inspirovaný programy Nendo a Mirai od Izware, byl vydán v nové opravné verzi 2.4.1. Ke stažení již také ve formátu Flatpak z Flathubu.

    Ladislav Hagara | Komentářů: 0
    18.1. 22:22 | Nová verze

    Webový prohlížeč Dillo byl vydán ve verzi 3.2.0. Přidává podporu vzorců v SVG, obrázků ve WebP, změny velikosti stránky či možností posouvání. Nedávno oslavil 25. výročí vzniku.

    Fluttershy, yay! | Komentářů: 0
    18.1. 01:33 | Zajímavý software

    Hra Mini Thief je na Steamu zdarma napořád, když aktivaci provedete do 24. ledna do 19.00 [ProtonDB].

    Ladislav Hagara | Komentářů: 0
    16.1. 22:00 | IT novinky

    Certifikační autorita Let's Encrypt oznámila, že bude volitelně nabízet krátkodobé certifikáty s šestidenní platností a navíc s možností vystavit je na IP adresu. Zvolit typ certifikátu bude možné v certifikačním profilu ACME.

    Ladislav Hagara | Komentářů: 9
    16.1. 21:22 | IT novinky

    Herní konzole Nintendo Switch 2 byla oficiálně potvrzena. Vyjde letos. Trailer na YouTube. Více ve středu 2. dubna na Nintendo Direct.

    Ladislav Hagara | Komentářů: 4
    16.1. 17:33 | Nová verze

    Byl vydán Linux Mint 22.1 s kódovým jménem Xia. Podrobnosti v přehledu novinek a poznámkách k vydání. Linux Mint 22.1 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: OpenCL, nVidia a OUT_OF_HOST_MEMORY

    mess avatar 24.11.2012 00:32 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Přečteno: 406×
    Mám takový menší problém s OpenCL. Při pokusu o inicializaci mi fce. clCreateContext vrací chybu CL_OUT_OF_HOST_MEMORY. Toto se děje nahodile - někdy to funguje, někdy ne. Následuje příklad kódu, který demonstruje popisovaný problém. Pokud se všechno povede podle očekávání, pak by měl program vypsat "ErrorCode:0", pokud se něco podělá, tak vypíše "ErrorCode:-6". Netušíte někdo, co dělám špatně? Mám nVidiu Quadro NVS140M.
    #include <CL/cl.hpp>
    
    void main(){
      cl_platform_id platform;
      clGetPlatformIDs(1, &platform, 0);
      cl_device_id device;
      clGetDeviceIDs(platform, CL_DEVICE_TYPE_DEFAULT, 1, &device, 0);
      cl_context_properties props[] = {
        CL_CONTEXT_PLATFORM,
        (cl_context_properties)platform,
        0
      };
      cl_int err = 0;
      cl_context context = clCreateContext(props,1,&device,0,0,&err);
      cout << "ErrorCode:" << err << endl;
    }
    
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.

    Řešení dotazu:


    Odpovědi

    mess avatar 24.11.2012 00:45 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Ještě poznamenám, že RAM mám 4GB + cca 7GB swap, takže o paměť by nouze být neměla. A htop hlásí, že je ještě cca 1GB fyzické RAM prázdný a ve swapu je 200MB nějakého shitu, ale nic kritického.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    stativ avatar 24.11.2012 12:31 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Na stackoveflow kdosi řeší podobný problém a tomu to sežere 45 GB ve VIRT. Zřejmě ale jde o podivný trik, aby CUDA (OpenCL na nVidii bude určitě používat stejné cesty) mělo jednotný systém adres pro adresování hosta i GPU.

    Já bych to viděl na špatné uvolňování zdrojů, a to buď na tvé straně, nebo na straně ovladače. Možná by pomohl valgrind.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    24.11.2012 03:28 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Já ti nepomůžu, jenom musím povzdechnout nad tím, že teď vím o další knihovně, kde si z nějakého důvodu museli vycucat nové číselné typy a zesrat tak jakoukoliv kooperativu s knihovnami používající standardní celočíselné typy. Proč musí proboha každá debilotina mít svůj vlastní typ int. Na khronos.org je popsán jako A signed two's complement 32-bit integer. Z nějakého důvodu jim ale mozek nedovolil použít int32_t? Pokud na takové platformě totiž opencl běží, takový typ snad musí existovat a tedy int32_t bude taky existovat. Ale né, za každou cenu budeme nutit uživatele používat vlastní datové typy, aby kód byl za každou cenu co nejnepřehlednější a zprasený.

    Takové API by snad ani nikdo neměl používat a OpenCL bojkotovat a najít si alternativu. Fůj.
    24.11.2012 10:32 l4m4
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Kvízová otázka: ve které verzi C++ standardu je int32_t?
    24.11.2012 12:36 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Kdo hledá, najde ^-^
    24.11.2012 14:06 l4m4
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Ale neboj, já odpověď znám. Zato ty se nějak zdráháš ji přiznat.
    24.11.2012 10:44 Jamaic
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Oni nejspíše používají vlastní datové typy, neb číselná reprezentace na GPU může být rozdílná od CPU.
    24.11.2012 12:29 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Neb číselná reprezentace int32_t a cl_int je podle popisu shodná.
    stativ avatar 24.11.2012 12:43 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    A proto budeme nutit uživatele pamatovat si, které datové typy jsou shodné se standardem (a jakým? v POSIXu to není) a které ne. A taky které ze „standardních“ typů jsou OpenCL podporovány (hint – double nemusí existovat přinejmenším u OpenCL 1.0).
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    24.11.2012 13:09 Jamaic
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    To že podle popisu dělají to samé neznámená že v paměti budou stejně zapsané.

    Viz. "Přímý kód", "Doplňkový kód", atd.
    24.11.2012 13:58 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Tady je asi fakt někdo mimo.
    24.11.2012 14:09 l4m4
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Ano.
    stativ avatar 24.11.2012 12:19 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Protože GPU není CPU?
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    24.11.2012 12:27 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    A to s tím souvisí jak?
    mess avatar 24.11.2012 12:29 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    No, třeba je fajn moct pracovat s datovými typy, které jsou stejné na CPU i na GPU bez nutnosti nějakých převáděcích harakiri. A jinak díky, že se věnujete tématu dotazu.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    24.11.2012 12:41 Jardík
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    A jak je jiný int32_t od toho typu na GPU, který je popsán jako A signed two's complement 32-bit integer? Pokud takový typ existuje, musí int32_t v stdint.h být. Pokud neexistuje, těžko by bylo možné vytvořit C API pro takové GPU. Ale ok, už mlčím, jenom musím prudit, protože to občas pomáhá, někdo si toho všimne a pak třeba upustí od kravin, že si bude definovat vlastní celočíselné typy pro každou kravinu.
    stativ avatar 24.11.2012 12:37 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Protože GPU může mít (a má) své vlastní datové typy (třeba 16bitový half) a s ohledem na výkon nemá smysl řešit případnou nutnost konverzí (no, v případě přesunů halfu CPU - GPU nutná je). Mít polovinu typů nadefinovanou podle OpenCL a polovinu pomocí „standardních“ typů jako je uitn32_t je IMHO ještě mnohem větší bordel.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    stativ avatar 24.11.2012 12:48 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Tohle asi nebylo úplně šťastné vyjádření, s OpenCL jsem už nedělal víc než rok. Když nad tím přemýšlím, tak to u C API pro OpenCL bude spíš z důvodu a) jednotnosti, b) znalosti, že daný typ půjde dobře překonvertovat na to, s čím pracuje OpenCL kernel
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    24.11.2012 10:28 Jamaic
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Neběží ti na počítači nějaká graficky akcelerovaná aplikace? (hra, 3D modelovací program, DWM, ...)

    Mimochodem, ty si vytvoříš "context" přez clCreateContext ale potom ho přez clReleaseContext neuvolňuješ. Takže máš v aplikaci memoryleak, který ti nejspíš způsobuje tuhle chybu.
    mess avatar 24.11.2012 11:20 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    O ten clReleaseContext nejde, používám C++ bindings, tam se to řeší v destruktoru příslušné třídy, dával jsem sem jen minimální příklad.

    Jinak máš recht, běží mi tu KWin se zapnutými kompozitními efekty. Ale pochopil bych, kdyby to selhalo pokaždé, ne jen nahodile. Navíc, když si pomocí clGetDeviceInfo nechám zjistit, jestli je zařízení dostupné, tak mi vrací vždycky true.

    Teď jsem zjistil zajímavou věc a sice, že asi záleží na velikosti volné fyzické RAM. Zavřel jsem Firefox a rozjelo se to. Nicméně i s tím Firefoxem jsem měl cca 500MB RAM volné, tak moc nechápu, na co to potřebuje tolik paměti.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    stativ avatar 24.11.2012 12:50 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Napadá mě, jestli to nebude chtít třeba stejné množství paměti jako je velikost paměti GPU, aby šlo udělat 1:1 mapování mezi GPU a RAM.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    24.11.2012 13:13 Jamaic
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    OS by měl být schopen namapovat virtuální adresu na paměť, který má v sobě grafická karta. Takže by ti to fyzicky nemělo zaplňovat RAM.

    Spíš bude problém s tím, že Firefox má v sobě zabudovanou podporu pro akceleraci pomocí grafické karty, tudíž se to s tvým programem může hádat.
    mess avatar 24.11.2012 13:36 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Podle toho, co zatím pozoruju, tak to závisí na dvou faktorech:
    1. Velikosti volné RAM (pokud mám míň, než cca 500MB volné, tak to začne blbnout - moje GK má 512MB vlastní RAM, takže to fakt vypadá, jako by si to dělalo nějaký buffer pro komunikaci. Otázkou zůstává, proč do pekla?)
    2. Zapnutí/vypnutí kompozitních efektů v KWin (asi se to bije, nebo já nevím).
    Zrovna teď mám v KWinu vypnuté efekty, mám zapnutý FF, RAMky je volné cca 2GB a funguje to.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    mess avatar 24.11.2012 13:40 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Tak ještě jeden poznatek - bije se to asi Flashem. Zapnu Youtube - nefunguje, vypnu Youtube - funguje. Tento jev dokážu vyvolat spolehlivě :-) Vypnul jsem HW akceleraci Flashe a vypadá to, že zatím všechno v pohodě.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    mess avatar 25.11.2012 12:44 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Takže abych to shrnul. Vypadá to, že implementace OpenCL na nVidii vyžaduje tyto dvě podmínky:
    1. Velikost volné RAM musí být aspoň taková, jako velikost paměti na zvoleném zařízení (nevím, proč).
    2. Nesmí být zrovna spuštěná žádná aplikace používající HW akceleraci přes zvolené zařízení (správce oken s kompozitními efekty, Flash, přehrávač filmů používájící HW akceleraci ...).
    Snad to někomu pomůže.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    25.11.2012 13:02 chrono
    Rozbalit Rozbalit vše Re: OpenCL, nVidia a OUT_OF_HOST_MEMORY
    Kompozitné efekty, aspoň u mňa, nevadia (môže to ale súvisieť s voľnou pamäťou CPU/GPU).

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.