Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Optimera Era divisionberäkningar

Postades av 2002-05-15 18:10:23 - Sven Åke Persson, i forum visual basic - allmänt, Tråden har 2 Kommentarer och lästs av 605 personer

Hello Folks
Har skrivit om inlägget blev lite missvisande.
När man gör många beräkningar i tex en loop på decimala tal
kan man vinna uträkningstid om man använder principen,
istället för X / Y kan man skriva X * (1 / Y)

Option Explicit
Dim start As Single
Dim Normal As Single
Dim Inverted As Single

Private Sub Command1_Click()
Dim i As Long, ret As Single
Normal = 1453.25
start = Timer
For i = 1 To 10000000
ret = 25.3246 / Normal
Next 'i
Label1.Caption = Timer - start
End Sub

Private Sub Command2_Click()
Den här proceduren är ca 20 % snabbare
Dim i As Long, ret As Single
Inverted = 1 / 1453.25
start = Timer
For i = 1 To 10000000
ret = 25.3246 * Inverted
Next 'i
Label2.Caption = Timer - start
End Sub

mvh
Sven


Svara

Sv: Optimera Era divisionberäkningar

Postades av 2002-05-15 19:27:51 - Johan Djupmarker

Detta är ju iofs riktigt, men det "hjälper" ju bara om man ska dividera med en konstant. Om man ska räkna med olika tal varje gång blir det ca 20% långsammare istället. Såhär kan koden se ut då:

Dim start As Single
Dim Normal As Single


Private Sub Command1_Click()
Dim i As Long, ret As Single
Normal = 1453.25
start = Timer
For i = 1 To 10000000
ret = 25.3246 / Normal
Next 'i
Label1.Caption = Timer - start
End Sub

Private Sub Command2_Click()
'Den här proceduren är inte alls ca 20 % snabbare
Dim i As Long, ret As Single
start = Timer
For i = 1 To 10000000
ret = 25.3246 * (1 / 1453.25)
Next 'i
Label2.Caption = Timer - start
End Sub


Ingen kritik mot dej Sven, ville bara göra alla uppmärksamma på att det är i detta "specialfall" det ökar prestandan...

/Johan


Svara

Sv: Optimera Era divisionberäkningar

Postades av 2002-05-16 11:09:49 - Tord Berglund

Ett litet tillägg till bara, dividerar man heltal skall man använda operatorn \ istället för /. Den förra är ca 4 ggr snabbare.

//Tord


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 612
27 953
271 709
6 578
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies