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 04:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.24 a Xwayland 24.1.13 řeší 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Komunita

    Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za červen 2026. Vypíchnuta je vylepšená podpora Waylandu. Už není považována za experimentální. V příští verzi Linux Mintu, plánována je na Vánoce, bude běh Cinnamonu plně podporován na X11 i Waylandu. V květnu na vývoj Linux Mintu přispělo 611 dárců celkovou částkou 19 612 dolarů. Dalších 2 326 patronů přispělo na Patreonu celkovou částkou 5 334 dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Bezpečnostní upozornění

    V Linuxu v KVM byla nalezena a v upstreamu již byla opravena kritická zranitelnost Januscape aneb CVE-2026-53359. Root na hostovaném počítači (virtuální stroj) může obejít izolaci a získat plnou kontrolu nad hostitelským systémem (DoS útok nebo vzdálené spuštění kódu s právy roota). Na obou hlavních architekturách – Intel i AMD. Zranitelnost v Linuxu existovala téměř 16 let (od srpna 2010 do června 2026).

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | IT novinky

    Tribunál Soudního dvora Evropské unie dnes zamítl několik žalob, v nichž se americká společnost Apple ohrazovala proti pravidlům fungování velkých technologických společností na unijním trhu. Applu se nelíbilo, že jeho obchod s aplikacemi a operační systém iOS mají podléhat přísnějším povinnostem jen proto, že Brusel firmu považuje za takzvaného gatekeepera, tedy strážce přístupu.

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

    Na WhatsAppu budou postupně v průběhu následujících měsíců zavedena uživatelská jména. Telefonní čísla tak mohou zůstat soukromá. Aktuálně si lze uživatelské jméno rezervovat.

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

    Byl aktualizován TIOBE Index (Wikipedie). Programovací jazyk Rust se poprvé dostal do první desítky tohoto žebříčku popularity programovacích jazyků. Vede Python následovaný C, C++, Java, C#, …

    Ladislav Hagara | Komentářů: 0
    včera 01:55 | Nová verze

    Proton (Wikipedie), tj. fork Wine integrovaný ve Steamu umožňující na Linuxu hrát hry určené pouze pro Windows, byl vydán ve verzi 11.0-1. Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled všech podporovaných her na stránkách ProtonDB

    Ladislav Hagara | Komentářů: 0
    7.7. 20:44 | Zajímavý software

    Byly publikovány zdrojové kódy počítačové hry Unturned. Pro nekomerční účely. V plánu je přelicencování pod MIT. Hra Unturned je postavena nad multiplatformním herním enginem Unity.

    Ladislav Hagara | Komentářů: 1
    7.7. 15:55 | IT novinky

    První česká družice navržená a sestavená výhradně studenty se dostala na oběžnou dráhu Země. Družice KOSTKA, kterou vyvinul studentský tým YSpace z Vysokého učení technického v Brně (VUT), dnes odstartovala na palubě rakety Falcon 9 společnosti SpaceX v rámci mise Transporter-17 z kalifornské základny Vandenberg Space Force Base.

    Ladislav Hagara | Komentářů: 0
    7.7. 05:00 | IT novinky

    Po nákresech ovladače Steam Controller a puku společnost Valve na svém GitLabu publikovala projekt Inkterface, tj. podrobný návod (PDF, video v mp4) na sestavení předního panelu s e-papírovým displejem pro Steam Machine pro zobrazování systémových informací. Použity jsou součástky od společnosti Adafruit.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (8%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (16%)
     (25%)
    Celkem 2078 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Vývoj CUDA s KDevelop a optimus

    13.12.2013 16:41 | Přečteno: 1241× | Linux a další věci co má společného s IT | Výběrový blog

    Tenhle blog slouží jako malý návod pro ty, kteří se s CUDA na linuxu prali jako já. Zprovoznění CUDA na linuxu není vůbec žádná sranda s technologií optimus. První problém, na který narazíte je zprovoznění Bumblbee. Jelikož jedu na (K)Ubuntu 13.10, tak se tento návod bude soustředit hlavně pro tuto distribuci, ale zkušenější linuxák by si měl poradit i na jiných distribucích. Moje karta nefungovala správně s ovladači v oficiálním repozitáři, tak jsem musel nainstalovat novější ovladače. Jelikož jsem lenivý je kompilovat, tak jsem nainstaloval ovladač z repozitáře ppa:xorg-edgers/ppa a to ten nejnovější ve verzi 331. Po nainstalování ovladače a všeho potřebného doporučuji tento repozitář odebrat, aby se vám pořád neaktualizoval (přeci jenom je ten názeve edgers). Poté jsem nainstaloval bumblebee z jejich repozitáře ppa:bumblebee/stable. Bohužel si již přesně napamutuju co jsem instaloval, ale balíky nvidia-331, bumblebee-nvidia a primus určite. Po instalaci zkuste restart a modlete se aby vše fungovalo, pokud vám bumblbee nefunguje musíte si najít v čem může být problém (zablokovat ostatní ovladače tj. hlavně nouveau atp.). Pokud již vám jede bumblebee máte to nejhorší za sebou a gratuluju. Dalším krokem je instalace CUDA a to balíčky nvidia-cuda-dev nvidia-cuda-gdb nvidia-cuda-toolkit. Teď je nejlepší zkusit si zkompilovat nějaký program pro CUDA. Může zkusit např. tento, je pro zařízení s podporou CUDA 2.0 a větší kvůli printf v kernelu:
    #include <stdio.h>
    
    __global__ void helloCUDA(float f)
    {
      printf("Hello thread %d, f=%f\n", threadIdx.x, f);
    }
    
    int main()
    {
      helloCUDA<<<1, 5>>>(1.2345f);
      cudaDeviceSynchronize();
      return 0;
    }
    
    Kompilaci provede pomocí (kde test.cu je název souboru s kódem a test název zkompilovaného programu):
    nvcc -arch=sm_20 test.cu -o test
    Aby program s CUDA fungoval (pokud máte optimus) je ho potřeba pustit pomocí optirun. Výsledný program spustíte tedy pomocí optirun takto (můžete použít optirun s argumente --no-xorg):
    optirun --no-xorg ./test
    Pokud se vám vypíše
    Hello thread 0, f=1.234500
    Hello thread 1, f=1.234500
    Hello thread 2, f=1.234500
    Hello thread 3, f=1.234500
    Hello thread 4, f=1.234500
    
    ,tak vám CUDA funguje přesně jak má a může vesele vyvíjet aplikace využívající GPU.

    KDevelop

    Pokud stejně jako já rádi použiváte KDevelop, tak nastavení aby se KDevelop choval k souborům s příponou .cu a .cuh jako souborům C resp C++ provode v systémovém nastavení KDE v kategorii Asociace souborů kde u x-c++src pridáte další příponu *.cu a u x-c++hdr přidáte příponu *.cuh. Nyní by vám již mělo fungovat doplňování a refaktoring v KDevelop se soubory s těmito příponami.


    Ještě zbývá upravit v projektu CMakeLists.txt, tak aby vypadal nějak takto:
    cmake_minimum_required(VERSION 2.8)
    
    project(nazevprojektu)
    
    # kvuli kompabilite s nvcc je potreba pouzit gcc verze 4.6 u CUDA toolkit 5.5 tohle muzete odebrat
    set(CMAKE_CXX_COMPILER g++-4.6)
    set(CMAKE_CC_COMPILER gcc-4.6)
    set(CMAKE_C_COMPILER gcc-4.6) 
    
    find_package(CUDA REQUIRED)
    include(FindCUDA)
    
    
    # nvcc flags                                                                                                                                                                                               
    set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS};-gencode arch=compute_30,code=sm_30)
    set(CUDA_VERBOSE_BUILD ON CACHE BOOL "nvcc verbose" FORCE)
    
    
    cuda_add_executable(nazevprojektu main.cu dalsifile.cu file.cpp)
    

    Při vývoji narazíte na problém, že se vám aplikace spuštěné pomocí optirun déle spouští. Je to způsobením, že se pokaždé musí nastartovat další X server. To lze vyřešit tím, že si pustíte nějaký program pomocí optirun a necháte ho běžet. Poté se vám již aplikace budou spouštět normálně.

    Debugování

    Nyní přichází na řadu debugování to lze provádět pomocí cuda-gdb. Aby vám cuda-gdb fungovalo je potřeba ukončit všechny programy, které grafickou kartu s CUDA využívají. Opět musíte spouštět cuda-gdb pomocí optirun nyní již musíte použít argument --no-xorg jinak vám nebude fungovat. Například takto:

    optirun --no-xorg cuda-gdb --args programscuda -jehoargumenty
    cuda-gdb je postaveno na gdb, takže musíte umět aspoň nějaké základy používání gdb.

    Pokud jste došli až sem a vše vám funguje gratuluji.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    19.12.2013 09:06 natiku | skóre: 26 | blog: natiku
    Rozbalit Rozbalit vše Re: Vývoj CUDA s KDevelop a optimus
    Pěkné!

    Moc dík, notebook s OPTIMUS mám už na cestě.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.