Article View: pl.comp.lang.asm
Article #1500Re: Pomiar cykli procesora
From: Bernard
Date: Sun, 23 Sep 2007 15:03
Date: Sun, 23 Sep 2007 15:03
21 lines
1677 bytes
1677 bytes
Wojciech Muła wrote: > Ryouk wrote: >> Wg manuala i opinii jednego asemblerowca te movy to jakieś 2 cykle, > > 2 cykle **maszynowe**. > >> a mój program daje wynik około 44 cykli. Na komputerze znajomego >> wynik to 35. > > RDTSC czyta licznik cykli **zegarowych** -- na cykl maszynowy > przypada kilka-kilkanaście cykli zegarowych. Żeby zmierzyć > liczbę cykli maszynowych musiałbyś czytać inne MSR-y. Nic podobnego. We współczesnych procesorach x86 nie ma czegoś takiego, jak "cykl maszynowy", w jednym cyklu zegara kończy się wykonanie kilku instrukcji. Zaobserwowany efekt można wytłumaczyć na 100 sposobów - umiejscowienie danych w hierarchii pamięci, serializacja wynikająca z użycia instrukcji rdtsc i parę innych zjawisk. Nie zdziwiłby mnie żaden wynik z przedziału od 5 do 400 cykli.
Technical Details
Message-ID:
<46f67a71$0$4962$f69f905@mamut2.aster.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.astercity.net!news.aster.pl!not-for-mailReferences:
<fd5e92$cbh$1@nemesis.news.tpi.pl> <slrnffcj10.2l5.wojciech_mula@cat.tac>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.astercity.net!news.aster.pl!not-for-mail Date: Sun, 23 Sep 2007 17:03:39 +0200 From: Bernard <bernard@earth.net> User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 Newsgroups: pl.comp.lang.asm Subject: Re: Pomiar cykli procesora References: <fd5e92$cbh$1@nemesis.news.tpi.pl> <slrnffcj10.2l5.wojciech_mula@cat.tac> In-Reply-To: <slrnffcj10.2l5.wojciech_mula@cat.tac> X-Antivirus: avast! (VPS 000775-6, 2007-09-22), Outbound message X-Antivirus-Status: Clean Lines: 21 Message-ID: <46f67a71$0$4962$f69f905@mamut2.aster.pl> NNTP-Posting-Date: 23 Sep 2007 14:38:41 GMT NNTP-Posting-Host: 82.210.165.187 X-Trace: 1190558321 mamut2.aster.pl 4962 82.210.165.187:1111 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit