🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fr.comp.lang.c
Article #15405

Re: Delai en 100 eme de ms universel

#15405
From: Antoine Leca
Date: Mon, 26 Sep 2005 10:57
35 lines
3041 bytes
En <news:01c5c0cd$b9ffb9a0$6801a8c0@ramislap>, Alcor va escriure:
> personnellement, j'utiliserait l'approche inverse : on boucle pendant
> un temps fixe et on regarde jusqu'o� on est arriv� � compter. ce
> nombre sera alors � multiplier par la dur�e demand�e.
>
> par exemple on peut d�tourner l'interruption 1C le temps du
> chronom�trage. (elle est appel�e 18,2 fois par seconde)
[couic]
> ne pas oublier de faire un test de d�bordement du compteur. j'utilise
> des INT64 et sur un p4 � 2.6GHz �a montait � 15.000.000 cycles.

Autrement dit, 5800 cycles par MHz, ou (c'est pareil) un temps de cycle de
170 ticks CPU.

> mais un jour, �a d�bordera, c'est juste une question de temps.

Avec des entiers sur 64 bits, tu as quand m�me un peu de temps: en supposant
que ni les architectures ni les optimisateurs ne progressent (m�me temps de
cycle), le d�bordement arrivera (en sign�) pour une fr�quence de 1400 EHz.
Avec un temps de cycle r�duit � 1 tick, une belle optimisation, on est
encore dans des fr�quences de l'ordre de 8 EHz, plus de 2 milliards de fois
mieux qu'� l'heure actuelle. Attention aux interf�rences!


Mais je vois un probl�me avec ta m�thode: sous DOS, les compilateurs 16 bits
(susceptibles de s'interfacer directement avec l'interruption 0x1C) ne sont
pas capables de manipuler des donn�es enti�res sur 64 bits dans des
conditions non prohibitives. La tentation va donc �tre grande de prendre un
compilateur 32 bits (genre DJGPP); cela va donc faire intervenir le temps de
phase de l'h�te DPMI, ce qui va rendre un peu plus compliqu� le calcul du
temps de base de la boucle (il va au moins falloir faire une interpolation
lin�aire).


Antoine
Technical Details
Message-ID: <dh8k7f$iej$1@shakotay.alphanet.ch>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!newsfeed.stueberl.de!news.imp.ch!news.imp.ch!80.83.46.147.MISMATCH!news.alphanet.ch!alphanet.ch!not-for-mail
References: <432ad506$0$307$7a628cd7@news.club-internet.fr> <r1h7j1tq1djhe51hd4fifl6tah44r1i3fv@4ax.com> <01c5c0cd$b9ffb9a0$6801a8c0@ramislap>

Show Full Headers
Complete Article Headers
X-Google-Thread: f9822,8d23bb47e02845e2
X-Google-Attributes: gidf9822,public
X-Google-Language: FRENCH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!newsfeed.stueberl.de!news.imp.ch!news.imp.ch!80.83.46.147.MISMATCH!news.alphanet.ch!alphanet.ch!not-for-mail
From: "Antoine Leca" <root@localhost.invalid>
Newsgroups: fr.comp.lang.c
Subject: Re: Delai en 100 eme de ms universel
Date: Mon, 26 Sep 2005 12:57:51 +0200
Organization: Posted through ALPHANET (http://www.alphanet.ch/)
Lines: 36
Sender: antoinel@143.red-217-127-250.staticip.rima-tde.net
Message-ID: <dh8k7f$iej$1@shakotay.alphanet.ch>
References: <432ad506$0$307$7a628cd7@news.club-internet.fr> <r1h7j1tq1djhe51hd4fifl6tah44r1i3fv@4ax.com> <01c5c0cd$b9ffb9a0$6801a8c0@ramislap>
NNTP-Posting-Host: 143.red-217-127-250.staticip.rima-tde.net
Mime-Version: 1.0
Content-Type: text/plain;
 charset="iso-8859-15"
Content-Transfer-Encoding: 8bit
X-Trace: shakotay.alphanet.ch 1127732272 18899 217.127.250.143 (26 Sep 2005 10:57:52 GMT)
X-Complaints-To: usenet@alphanet.ch
NNTP-Posting-Date: Mon, 26 Sep 2005 10:57:52 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1506
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506