- Red Magic 11 Air – vékony házból süvít a szél
- Csíptetős fülesek csatája – Sony LinkBuds Clip vs. Huawei FreeClip 2
- Mérföldkő a szilárdtest-akkuknál: fontos lépést tett a QuantumScape
- Újabb óriásakku a Honortól: az X80 lehet a következő 10 000 mAh-s modell
- iPhone 18 Pro Max: kis kapacitásbővítés hoz nagy előrelépést üzemidőben
- Nő az eSIM-ek iránti igény
- iPhone topik
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Android dual SIM okostelefonok
- OnePlus 15 - van plusz energia
- Samsung Galaxy S23 Ultra - non plus ultra
- Valósággá vált a Tecno szupervékony telefonja
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Szívós, szép és kitartó az új OnePlus óra
- Samsung Galaxy A54 - türelemjáték
- Luck Dragon: Asszociációs játék. :)
- Elektromos rásegítésű kerékpárok
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- MasterDeeJay: Újabb CoffeeTime projekt készül. Asus Q170M-C és QTJ2 (i7 10750H ES)
- Oldman2: Magyar feliratos/szinkronos játékok PS4/PS5 konzolokra
-
Mobilarena

Új hozzászólás Aktív témák
-
válasz
husztiimi
#20797
üzenetére
o3-high-t probaltad?
program cusolver_demo use iso_c_binding implicit none interface function cusolverDnCreate(handle) bind(C, name="cusolverDnCreate") import :: c_ptr, c_int type(c_ptr), intent(out) :: handle integer(c_int) :: cusolverDnCreate end function cusolverDnCreate function cusolverDnDestroy(handle) bind(C, name="cusolverDnDestroy") import :: c_ptr, c_int type(c_ptr), value :: handle integer(c_int) :: cusolverDnDestroy end function cusolverDnDestroy function cusolverDnDsyevd(handle, jobz, uplo, n, d_A, lda, d_W, d_work, lwork, d_devInfo) & bind(C, name="cusolverDnDsyevd") import :: c_ptr, c_int, c_double, c_char type(c_ptr), value :: handle character(c_char), value :: jobz character(c_char), value :: uplo integer(c_int), value :: n type(c_ptr) :: d_A integer(c_int), value :: lda type(c_ptr) :: d_W type(c_ptr) :: d_work integer(c_int), intent(inout) :: lwork type(c_ptr) :: d_devInfo integer(c_int) :: cusolverDnDsyevd end function cusolverDnDsyevd function cusolverDnDsyevd_bufferSize(handle, jobz, uplo, n, d_A, lda, d_W, lwork) & bind(C, name="cusolverDnDsyevd_bufferSize") import :: c_ptr, c_int, c_char type(c_ptr), value :: handle character(c_char), value :: jobz character(c_char), value :: uplo integer(c_int), value :: n type(c_ptr) :: d_A integer(c_int), value :: lda type(c_ptr) :: d_W integer(c_int), intent(out) :: lwork integer(c_int) :: cusolverDnDsyevd_bufferSize end function cusolverDnDsyevd_bufferSize end interface integer(c_int) :: n, lda, lwork, status type(c_ptr) :: handle type(c_ptr) :: d_A, d_W, d_work, d_devInfo real(c_double), allocatable :: h_A(:,:), h_W(:) character(c_char) :: jobz, uplo integer :: i, j n = 100 lda = n allocate(h_A(n,n)) allocate(h_W(n)) do i = 1, n do j = 1, n h_A(i,j) = i + j end do end do jobz = 'V' uplo = 'U' status = cusolverDnCreate(handle) if (status /= 0) then write(*,*) "Hiba: cusolverDnCreate" stop end if ! GPU-memória allokálás, pl.: ! call cudaMalloc(d_A, n*n*sizeof(real(c_double))) ! call cudaMalloc(d_W, n*sizeof(real(c_double))) ! Másolás: h_A -> d_A (cudaMemcpy) ! Lekérdezzük a szükséges workspace méretet: status = cusolverDnDsyevd_bufferSize(handle, jobz, uplo, n, d_A, lda, d_W, lwork) if (status /= 0) then write(*,*) "Hiba: Buffer méret lekérdezés" stop end if ! GPU workspace allokálása a lwork méret alapján: ! call cudaMalloc(d_work, lwork*sizeof(real(c_double))) ! call cudaMalloc(d_devInfo, sizeof(integer(c_int))) ! Eigen-dekompozíció meghívása: status = cusolverDnDsyevd(handle, jobz, uplo, n, d_A, lda, d_W, d_work, lwork, d_devInfo) if (status /= 0) then write(*,*) "Hiba: cusolverDnDsyevd" stop end if ! Eredmények visszamásolása: pl. ! call cudaMemcpy(h_W, d_W, n*sizeof(real(c_double)), cudaMemcpyDeviceToHost) ! Ha az eigenvektorokra is szükség van: call cudaMemcpy(h_A, d_A, n*n*sizeof(real(c_double)), cudaMemcpyDeviceToHost) ! GPU erőforrások felszabadítása: ! call cudaFree(d_A); call cudaFree(d_W); call cudaFree(d_work); call cudaFree(d_devInfo) status = cusolverDnDestroy(handle) if (status /= 0) then write(*,*) "Hiba: cusolverDnDestroy" end if write(*,*) "Eigenértékek:" write(*,*) h_W end program cusolver_demo
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Nő az eSIM-ek iránti igény
- iPhone topik
- PlayStation 5
- Luck Dragon: Asszociációs játék. :)
- Milyen processzort vegyek?
- Bittorrent topik
- Alkoholista nevelde
- NBA és kosárlabda topic
- Kormányok / autós szimulátorok topikja
- Mérföldkő a szilárdtest akkuknál: fontos lépést tett a QuantumScape
- További aktív témák...
- Durván ár alatt, új bontatlan gamer laptopok garanciával, UGYAN AZT KAPOD MINT A BOLTBAN OLCSÓBBAN!
- iPad Pro 11" M2 4. Gen. 2022 128GB Space Grey 92% Akku
- ÚJ Bontatlan Apple Macbook AIR M2 , M3 , M4 Legújabb magyar billentyűzet 1 év Garancia Deák Térnél.
- AKCIÓ ÚJ Bontatlan Macbook Air 13,6 M4 10CPU/10GPU 16GB/512GB SSD TOUCH ID - Magyar Azonnal Deák tér
- AKCIÓ ÚJ Bontatlan Macbook Pro 14 M4 MAX 14 32GPU 36GB 1TB Magyar billentyűzet Azonnal átvehető Deák
- Dell XPS 13 9310 i7-1185G7 16GB 512GB 13" FHD+ 1 év garancia
- BESZÁMÍTÁS! Asus H510M R5 5600X 16GB DDR4 512GB SSD RTX 3070 8GB Rampage SHIVA GIGABYTE 750W
- Bomba ár! Lenovo ThinkPad Yoga 370 - i5-G7 I 16GB I 256SSD I 13,3" FHD Touch I W11 I Cam I Gari!
- Vásárlunk iPhone 12/12 Mini/12 Pro/12 Pro Max
- Apple iPhone 14 / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 87%
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



