Page 7 sur 20

Publié : sam. 15/janv./2005 18:24
par nico
J'ai failli poser la question concernant BlitzMax car je ne voyais pas où le télécharger, c'est pourquoi j'ai précisé que les essais éffectués se sont déroulés sur Blitz3d.

Publié : sam. 15/janv./2005 18:27
par Coolman
Desole, on s'est croisé apparement nico

Sur ce forum, il est dit que pour avoir la version beta de blitzmax windows, il faut avoir acheté la version mac...

A voir ici :

http://www.rllmukforum.com/index.php?sh ... 7101&st=40

Publié : sam. 15/janv./2005 18:31
par comtois
tu vas faire ton choix d'un langage sur la rapidité d'une boucle
for i= 1 to 10000 ? , c'est étonnant comme critère de choix :)

mais bon , je n'en dirai pas plus ...

Publié : sam. 15/janv./2005 18:44
par Anonyme2
Avec Blit3D démo j'ai une erreur

Expecting end of file :roll:
J'ai recommené mais toujours pareil...

Publié : sam. 15/janv./2005 19:02
par Coolman
comtois a écrit :tu vas faire ton choix d'un langage sur la rapidité d'une boucle
for i= 1 to 10000 ? , c'est étonnant comme critère de choix :)

mais bon , je n'en dirai pas plus ...
Ca, c'est pas seulement une boucle :lol:

For I = 0 To 8190
If Flags(I)=1
Prime = I + I
Prime = Prime + 3
K = I + Prime
While K <= 8190
Flags(K) = 0
K = K + Prime
Wend
Count = Count + 1
EndIf
Next
Next

Regarde egallement le forum de bliz, en general, je me fie plus aux forums (j'en visite plusieurs) avant d'acheter un produit qu'aux caracteritques ...

Pour le forum FR :

http://www.blitz3dfr.com/phpfrench/e107 ... php?gid=18

8)

Publié : sam. 15/janv./2005 19:04
par Coolman
Denis a écrit :Avec Blit3D démo j'ai une erreur

Expecting end of file :roll:
J'ai recommené mais toujours pareil...
Tu as du rater la ligne de fin, sinon utilise un editeur pour nettoyer, il y'a parfois des caracteres invisible dans les page htmls qu'il faut enlever...

Publié : sam. 15/janv./2005 19:06
par nico
C'est pas grand chose, essayes ça:

Code : Tout sélectionner

Local t,Iter,Count,i,prime,k 

Const ITERATIONS = 5000 

Local Flags [8191] 
Print "SIEVE OF ERATOSTHENES - " + ITERATIONS + " iterations" 

t = MilliSecs () 

For Iter = 1 To ITERATIONS 

Count = 0 

For I = 0 To 8190 
Flags[I] = 1 
Next 

For I = 0 To 8190 
If Flags[I]=1 Then 
Prime = I + I 
Prime = Prime + 3 
K = I + Prime 
While K <= 8190 
Flags[K] = 0 
K = K + Prime 
Wend 
Count = Count + 1 
EndIf 
Next 

Next 

t = MilliSecs () - t 

Print (ITERATIONS)+" iterations took "+(t)+" m/secs." 
Print "Primes: "+(Count) 
Input()
End

Publié : sam. 15/janv./2005 19:36
par Coolman
Je confirme, je viens de tester, tu m'as devancé nico, Le code est apparement prevu pour blitzmax, j'ai enlevé quelques commandes et en fin de prog ajouté waitkey() sinon on n'a pas le temps de voir l'affichage sous la console, ne pas oublier de desactiver le debug sinon c'est tres lent :

rien a dire, c'est rapide...

Local t,Iter,Count,i,prime,k

Const ITERATIONS = 5000

Local Flags [8191]
Print "SIEVE OF ERATOSTHENES - " + ITERATIONS + " iterations"

t = MilliSecs ()

For Iter = 1 To ITERATIONS
Count = 0

For I = 0 To 8190
Flags = 1
Next

For I = 0 To 8190
If Flags=1 Then
Prime = I + I
Prime = Prime + 3
K = I + Prime
While K <= 8190
Flags[K] = 0
K = K + Prime
Wend
Count = Count + 1
EndIf
Next
Next
t = MilliSecs () - t
Print (ITERATIONS)+" iterations took "+(t)+" m/secs."
Print "Primes: "+(Count)
WaitKey()
End

Publié : sam. 15/janv./2005 19:37
par Anonyme2
Avec Debugger (2 essais)
--------------------------------

Blitz3D demo 34488 avec le Debugger
Blitz3D demo 33572 avec le Debugger

Pure 9313 avec le débugger
Pure 9360 avec le débugger


Sans le Debugger (2 essais)
-----------------------------------

Blitz3D demo 1587 sans le Debugger
Blitz3D demo 1585 le Debugger

Pure 1672 sans le Debugger
Pure 1687 sans le Debugger

Publié : sam. 15/janv./2005 20:05
par nico
Mes résultats pour 30000 itinérations sur un Athlon 1.5Ghz - 718Mo de ram.

Pure: 10685, 10505

Blitz3D: 11319, 11285

Bon, c'est pas très déterminant, tout ça!

Publié : sam. 15/janv./2005 23:43
par Le Soldat Inconnu
surtout que je pense que ce genre d'opération étant relativement simple, il doit pas y avoir 36 façon de faire en niveau du code source, donc peu de possibilité d'optimisation.
donc quelque soit le programme, on doit avoir une vitesse sensiblement équivalente :wink:
Mis à part que le debugger de Blitz3D semble très lent. :roll:


Coolman, pour le test de rapidité sur le site de Blitz, je suis sur qu'il n'a que la démo de Pure pour tester donc il a toujours le debugger d'actif. cela explique la différence de temps
c'est tout, il ne faut pas chercher plus loin je pense

Publié : dim. 16/janv./2005 12:57
par Coolman
Le Soldat Inconnu a écrit :surtout que je pense que ce genre d'opération étant relativement simple, il doit pas y avoir 36 façon de faire en niveau du code source, donc peu de possibilité d'optimisation.
donc quelque soit le programme, on doit avoir une vitesse sensiblement équivalente :wink:
Mis à part que le debugger de Blitz3D semble très lent. :roll:


Coolman, pour le test de rapidité sur le site de Blitz, je suis sur qu'il n'a que la démo de Pure pour tester donc il a toujours le debugger d'actif. cela explique la différence de temps
c'est tout, il ne faut pas chercher plus loin je pense

Bon, j'aurais du commencer par la, j'ai retrouve le lien original du post :

http://purebasic.myforums.net/viewtopic ... c&start=15

Je comprend relativement l'anglais, mais la ca me parait clair, si ca m'a interpelle, c'est qu'il ne s'agit pas d'une difference de 10% mais pres de 45 % et en plus d'apres le posteur sur une version blitzmax beta...

a vous de voir, vous pouvez verifier, vous avez pureb complet et vous pouvez vous procurer la version beta de blitzmax en faisant la demande chez l'auteur je crois...

Publié : dim. 16/janv./2005 13:20
par Anonyme2
Je veux bien faire des tests mais je ne recherche pas un prog pour mon job, alors je ne veux pas passer de temps à chercher la version que l'auteur voudrait bien s'il en a envie nous passer pour qu'on lui donne ensuite des dollars. Il faudra aussi remplir un formulaire avec le numéro de sécu, son tour de taille, le montant du salaire, si on est marié ou non, si on trompe sa femme... (heu, je m'égare :jesors: )

Soit on peut tester une version même limitée soit on se tourne vers d'autres langages; ça en dit simplement long sur leur vision des choses.

Ca n'a rien contre toi Coolman. :wink:

Publié : dim. 16/janv./2005 13:27
par nico
Je ne suis pas spécialiste, mais Blitz max doit utiliser des techniques particulières pour obtenir ces résultats; ce qui serait intéressant c'est de savoir lesquelles.

D'ailleurs, sur le site de PowerBasic, ils font la même démonstration avec une boucle For-Next et un calcul en nombre flottant et la différence est encore plus flagrante!

Publié : dim. 16/janv./2005 13:55
par Oliv
être ausi rappide sur des boucles for...next c'est bien, mais au niveau des autres commande comme la lecture/écriture de fichiers, l'affichage de sprites ça donne quoi ? :oops: