[Basic] LPT port performance *

Pagina: 1
Acties:

  • Guvner
  • Registratie: Oktober 2000
  • Laatst online: 05-04-2022
ik heb in basic een proggie geschreven wat data naar de lpt poort stuurt. Hierbij heb ik ook een tellertje gemaakt om te kijken hoe vaak dit per seconde kan.
Nu heb ik een, misschien wat wazige vraag.

Het programma loopt 1 seconde.
In deze seconde doet hij het volgende loopje:

- schrijf waarde naar lpt
- hoog teller op

dit loopje doet hij 4800 keer in 1 seconde

wanneer ik de stap van het schrijven naar de lpt poort weg haal doet hij dus alleen het stapje:

- hoog teller op

dit loopje doet hij 6200 keer in 1 seconde

Mijn vraag is nu.
Is het uit te rekenen hoeveel keer per seconde hij de stap "-schrijf waarde naar lpt" kan doen zonder het stapje hoog teller op.

Gooi er, wanneer dit zo moet zijn, nou niet meteen een slotje op. Maar meld het even wanneer ik mijn vraag anders of ergens anders moet stellen.

Verwijderd

1 keer de teller ophogen duurt 1sec. / 6200 = 0.00016129 seconden
Als hij het loopje 4800 keer doet dan is de teller 4800 x 0.00016129 seconden bezig.
Dat is 0.77419 seconden voor de teller.
Dan blijft er 0.22581 seconden over voor de 4800 LPT connecties.
4800 / 0.22581 x 1 = 21256.8 connecties per seconde kan hij dus maken met de LPT poort.

Alleen lijkt het er toch op dat ik een rekenfoutje gemaakt hebt, maar dat kan je denk zelf beter na rekenen ;-)

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

standaard 2 vergelijkingen met 2 onbekenden
x = de tijd nodig voor het ophogen van het tellertje
y = de tijd nodig voor het schrijven naar lpt

a) 4800 * ( x + y ) = 1
b) 6200 * x = 1 <=> x = 1 / 6200
b invullen in a: 4800 / 6200 + 4800 * y = 1
<=> y = ( 1 - 4800 / 6200 ) / 4800
= ( 6200 - 4800 ) / 6200 / 4800
= 1400 / 6200 / 4800
= 1 / 21257.142857142857142857142857143
Je kunt dus afgerond 21257 keer naar lpt schrijven per seconde

[ Voor 9% gewijzigd door Brahiewahiewa op 30-05-2004 12:32 . Reden: rekenfout ]

QnJhaGlld2FoaWV3YQ==


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Dit is duidelijk een programmeerprobleem en zou dus in PW horen. Ik ben echter bang dat het niveau van de primaire vraag niet geheel hoog genoeg is aangezien dit een wiskundig redelijk eenvoudig op te lossen vergelijking is :) Hiernaast is een discussie of je manier van rekenen uberhaupt klopt (kun je zomaar deze twee getallen van elkaar aftrekken) wellicht wel heel erg interessant; dus move ik hem alsnog :)

reken probleempje > Hoe vaak kan ik naar de LPT poort schrijven per seconde? *
SA > PW

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • baexem
  • Registratie: Juli 2002
  • Laatst online: 12-12 16:08
Voorstel:

t=timer
for a=1 to 10.000
"schrijf naar LPT poort"
next a
print 10.000 / (timer-t)

Voilá!

...


Verwijderd

In XP heb je een minimale interval van ik meen 10 miliseconden, hoe precies is je meting dan? Is er werkelijk nergens materiaal te vinden waarin uitgelegd staat hoe LPT werkt en wat je er mee kan?

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

Verwijderd schreef op 30 mei 2004 @ 12:50:
In XP heb je een minimale interval van ik meen 10 miliseconden, hoe precies is je meting dan? Is er werkelijk nergens materiaal te vinden waarin uitgelegd staat hoe LPT werkt en wat je er mee kan?
Dûh, je snapt toch wel dat dit een huiswerkvraag is?

QnJhaGlld2FoaWV3YQ==


  • ATS
  • Registratie: September 2001
  • Laatst online: 11-12 16:40

ATS

Hoe zorg je dat je programma 1 seconde loopt? Hoeveel tijd kost die test in je loop?

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

ATS schreef op 30 mei 2004 @ 23:04:
Hoe zorg je dat je programma 1 seconde loopt? Hoeveel tijd kost die test in je loop?
ik neem aan dat die test voor beide situaties hetzelfde is ;)

  • ATS
  • Registratie: September 2001
  • Laatst online: 11-12 16:40

ATS

Erkens schreef op 30 mei 2004 @ 23:09:
[...]

ik neem aan dat die test voor beide situaties hetzelfde is ;)
Dat kan wel zijn, maar het zorgt er wel voor dat de bovenstaande berekeningen over veel tijd een operatie kost niet kloppen, omdat de overhead van de loop genegeerd wordt.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 28-11 08:35

curry684

left part of the evil twins

Even topictitel bijgefixed naar Programming & Webscripting richtlijnen :)

Professionele website nodig?


  • Reptile209
  • Registratie: Juni 2001
  • Laatst online: 09:13

Reptile209

- gers -

De loop kan waarschijnlijk nog sneller door de index van de teller expliciet als integer te pakken:
QBasic:
1
10 dim a as integer

ofzo ;)

Zo scherp als een voetbal!

Pagina: 1