-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin2!goblin.stu.neva.ru!porbandar.httrack.net!news.httrack.net!exab
ot.com!feeder1-2.proxad.net!proxad.net!feeder2-2.proxad.net!nx02.iad01.newshost
ing.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-
spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: "slawek" <s...@h...pl>
Newsgroups: pl.comp.programming
References: <4f4feb4d$0$1271$65785112@news.neostrada.pl><jip3ao$9u9$...@n...news.atma
n.pl><4f501330$0$26703$65785112@news.neostrada.pl><jip477$asl$...@n...new
s.atman.pl><4f50b4a4$0$26698$65785112@news.neostrada.pl><jiqdm3$dvn$5@ine
ws.gazeta.pl>
<4f50bea4$0$1268$65785112@news.neostrada.pl><jiqfeg$dvn$...@i...gazeta.pl
><4f50c486$0$26685$65785112@news.neostrada.pl><jiqhqe$dvn$...@i...gazeta.
pl>
<jiqi0e$dvn$10@inews.gazeta.pl><4f50ddac$0$1279$6...@n...neostrada.p
l> <jiqqlu$dvn$13@inews.gazeta.pl>
In-Reply-To: <jiqqlu$dvn$13@inews.gazeta.pl>
Subject: Re: OpenMP - jest szybciej czy wolniej?
Date: Fri, 2 Mar 2012 17:27:00 +0100
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="utf-8"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 14.0.8117.416
X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8117.416
Lines: 113
Message-ID: <4f50f4d2$0$26694$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 62.69.202.124
X-Trace: 1330705618 unt-rea-a-01.news.neostrada.pl 26694 62.69.202.124:64077
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:195917
[ ukryj nagłówki ]
Użytkownik "Edek Pienkowski" <e...@g...com> napisał w
wiadomości grup dyskusyjnych:jiqqlu$dvn$1...@i...gazeta.pl...
> Już się ktoś pytał: to na pewno ta pętla? Zmieniałeś jej rozmiar?
Wysłałem właśnie przykładowy program - są co prawda 4 pętle, ale chyba widać
o co chodzi.
!***************************************************
****************************************************
************************
!
! Program test-omp
!
!***************************************************
****************************************************
************************
module main
! stale matematyczne i fizyczne (CODATA 2006)
real*8, parameter :: pi =
3.14159265358979323846264338327950288419716939938D0 ! pi
real*8, parameter :: epsilon0 =
8.85418781762038985053656303171075026060837016660D-1
2 ! przenikalnosc
elektryczna prozni [F/m]
real*8, parameter :: c = 299792458.0D0
! predkosc swiatla [m/s]
integer :: n,m;
! I/O units
integer :: input = 11 ! tekstowy wejsciowy plik z danymi
integer :: output = 12 ! tekstowy wyjsciowy plik z danymi
contains
subroutine setup(vec)
implicit none
complex*16, intent(out) :: vec(:)
integer :: i
do i = 1,n
vec(i) = pi*c*epsilon0;
enddo
end subroutine setup
subroutine solve(v1,v2)
implicit none
complex*16, intent(in) :: v1(:)
complex*16, intent(out) :: v2(:)
integer :: i
!$omp do schedule(static,1000)
do i = 1,n
v2(i) = v1(i)/c**2 + abs(epsilon0) + pi
enddo
!$omp end do
end subroutine solve
end module main
program testomp
use main
implicit none
real*4 stamp0 ! pomiar czasu - stempel 0
real*4 stamp1 ! pomiar czasu - stemper 1
integer, parameter :: nmax = 10000 ! takie duze tablice sa
complex*16 :: vec(nmax,2)
integer :: i1,i2,i,j
complex*16 :: sum
call cpu_time(stamp0)
n = 1000
m = 100000
if(n.le.nmax) then
!$omp parallel
i1 = 1
i2 = 2
call setup(vec(:,i1))
do j = 1,m
call solve(vec(:,i1),vec(:,i2))
i1 = mod(i1,2) + 1
i2 = mod(i2,2) + 1
enddo
!$omp end parallel
else
write(*,*) 'error: dimension(s)'
endif
call cpu_time(stamp1)
write(*,*) 'CPU time = ', stamp1-stamp0
sum = 0.D0
do i = 1,n
sum = sum + 1.D0/(1.D0+vec(i,i1)*vec(i,i1))
enddo
write(*,*) 'just for fun ', sum
end program testomp
Następne wpisy z tego wątku
- 02.03.12 16:40 Edek Pienkowski
- 02.03.12 16:45 Edek Pienkowski
- 02.03.12 16:50 slawek
- 02.03.12 19:11 slawek
- 03.03.12 06:28
- 03.03.12 10:13 slawek
- 03.03.12 11:14 Roman W
- 03.03.12 12:30
- 03.03.12 12:49 slawek
- 03.03.12 12:57 slawek
- 03.03.12 13:12
- 03.03.12 13:32 slawek
- 03.03.12 14:39
- 03.03.12 15:08 slawek
- 03.03.12 15:44 Edek Pienkowski
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-20 Gdańsk => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-20 czyste powietrze
- 2024-12-20 Katowice => Analyst in the Trade Development department (experience wi
- 2024-12-20 Opole => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-20 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-20 Rzeszów => International Freight Forwarder <=
- 2024-12-20 Katowice => Key Account Manager (ERP) <=
- 2024-12-20 Ekstradycja
- 2024-12-20 Mikroskop 3D
- 2024-12-20 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-20 Warszawa => Analityk w dziale Trade Development (doświadczenie z Powe
- 2024-12-20 Warszawa => Full Stack .Net Engineer <=
- 2024-12-20 Warszawa => Programista Full Stack .Net <=
- 2024-12-19 Kamerka sam. na tył
- 2024-12-20 Jak być bezpiecznym z Li-Ion?