Debat Languages Basics

Sujets variés concernant le développement en PureBasic
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message 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.
Coolman
Messages : 432
Inscription : sam. 01/janv./2005 16:07

Message 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
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message 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 ...
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Avec Blit3D démo j'ai une erreur

Expecting end of file :roll:
J'ai recommené mais toujours pareil...
Coolman
Messages : 432
Inscription : sam. 01/janv./2005 16:07

Message 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)
Coolman
Messages : 432
Inscription : sam. 01/janv./2005 16:07

Message 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...
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message 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
Coolman
Messages : 432
Inscription : sam. 01/janv./2005 16:07

Message 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
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message 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
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message 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!
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message 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
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Coolman
Messages : 432
Inscription : sam. 01/janv./2005 16:07

Message 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...
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message 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:
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message 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!
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message 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:
Répondre