Hirdetés
- Beköltözött a ChatGPT az Ulefone filléres órájába
- Kisebb kivágás, középen kamera: így nézhet ki az iPhone 18 Pro előlapja
- 100 wattos töltést és 27 wattos fordított töltést kap a Redmi Turbo 5 Max
- Másfél millió forintért már haza is vihető a Huawei aranyozott csúcsórája
- Gyártási gondok a BOE-nél: Samsung kaphatja az iPhone 17e kijelzőit is
- Samsung Galaxy A54 - türelemjáték
- Milyen okostelefont vegyek?
- iPhone topik
- Mágneses hordozható töltővel készül a Samsung a Galaxy S26 mellé
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- Google Pixel topik
- Fotók, videók mobillal
- Fontos frissítés érkezik a OnePlus 13-ra
- Xiaomi 15T Pro - a téma nincs lezárva
- Android Autót minden mobilra!
-
Mobilarena

Új hozzászólás Aktív témák
-
pomorski
őstag
Sziasztok,
egy kis okosságra/segítségre volna szükségem többszálas (openmp) programozás kapcsán. Adott egy fortran kód, amit mi írtunk, néhányezer soros egyszálas. Kimértük, hogy vannak olyan részek, amik végrehajtása nagyon-nagyon időigényes, ezért kézenfekvő volt az ötlet, hogy párhuzamosítani kellene openmp segítségével az időigényes blokkokat a lehető legtriviálisabb módon. Az egyik ilyen időigényes blokk az alábbi:
.
.
.
.
.
jb=0
do ib=1,elteres
do kb=1,mutato(ib)
jb=jb+1
jk=0
do ik=1,elteres
do kk=1,mutato(ik)
jk=jk+1
if (ib.eq.ik)then
sl_tmp=0._dp
if(kb.eq.kk)sl_tmp=egyedi_proton_spe(jb,jk,mm/2,n_of_sdet,s)
if(s(jb)%neutron.eq.s(jk)%neutron.and.kb.ge.kk)then
sl_tmp1=egyedi_proton_tbint(jb,jk,mm/2,n_of_sdet,s)
ujhmatp(ib)%hh(kk,kb)=sl_tmp+sl_tmp1
ujhmatp(ib)%hh(kb,kk)=sl_tmp+sl_tmp1
endif
endif
enddo
enddo
enddo
enddo
.
.
.
.
.
ezt az alábbi módon openmp-sítettem (a legbelső vastag betűvel szedett részt):
.
.
.
.
.
jb=0
do ib=1,elteres
do kb=1,mutato(ib)
jb=jb+1
jk=0
do ik=1,elteres!$omp parallel &
!$omp private(kk,sl_tmp,sl_tmp1) &
!$omp reduction(+:jk)
!$omp dodo kk=1,mutato(ik)
jk=jk+1
if (ib.eq.ik)then
sl_tmp=0._dp
if(kb.eq.kk)sl_tmp=egyedi_proton_spe(jb,jk,mm/2,n_of_sdet,s)
if(s(jb)%neutron.eq.s(jk)%neutron.and.kb.ge.kk)then
sl_tmp1=egyedi_proton_tbint(jb,jk,mm/2,n_of_sdet,s)
ujhmatp(ib)%hh(kk,kb)=sl_tmp+sl_tmp1
ujhmatp(ib)%hh(kb,kk)=sl_tmp+sl_tmp1
endif
endif
enddo!$omp end do
!$omp end parallelenddo
enddo
enddo
.
.
.
.
.
de sajnos hülyeséget számol a progi, ha őt -openmp kapcsolóval fordítom le. Ha nem rakom be eme kapcsolót, és a fordító egyszálas üzemmódban fordítja, akkor tökéletes eredményt számol a progi, -csak lassan ugyebár.“Ökölszabályként” tudom, hogy ami értéket kap az “private”, ami felösszegződik, annál használni kell a reduction-t. Illetve azt is, tudom, hogy időként szükség van a “shared”-re is. Sok mindent kipróbáltam, de a kód csak nem akar megfelelő lenni többszálas fordítás esetén. Ötlet?
szerk: Sajnos csak így sikerült beilleszteni a kódot, a formázás eltűnt, bocs.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Kerékpárosok, bringások ide!
- Vezeték nélküli fejhallgatók
- A fociról könnyedén, egy baráti társaságban
- AMD Navi Radeon™ RX 9xxx sorozat
- Forza sorozat (Horizon/Motorsport)
- Xbox Series X|S
- Proxmox VE
- Hamarosan a ChatGPT dönt arról, hogy mit nézhetsz meg
- War Thunder - MMO Combat Game
- BestBuy ruhás topik
- További aktív témák...
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- PlayStation Okosító Blu-ray lemezek - PS4 GoldHEN Loader / BD-JB Lapse és PS5 Auto Jailbreak AIO
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy S25 Edge 512GB, Kártyafüggetlen, 1 Év Garanciával
- Honor Magic7 Lite 512GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Sapphire B650M R7 8700F 32GB DDR5 1TB SSD RX 9070 XT 16GB CM MasterBox 5 fehér 750W
- HIBÁTLAN iPhone 14 Pro 512GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
- 175 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5070Ti (ELKELT)
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest



