CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

printf("blabla");

caelacanthe
caelacanthe
Niveau 10
16 février 2012 à 22:02:36

sinon, un autre truc. :(

ce code-ci:

http://pastebin.com/uuBeHb46

s'exécute trois fois plus rapidement que celui-ci:

http://pastebin.com/AGqqutPG

alors que j'ai juste changé l'emplacement de --i, gagnant deux additions au passage. des avis? on sort du cadre de la réalité, là. :hap:

godrik
godrik
Niveau 30
16 février 2012 à 22:50:09

quel compilateur?

godrik
godrik
Niveau 30
16 février 2012 à 22:52:38

les boucles qui vont en arriere sont typiquement bien plus lente que les boucles qui vont de l'avant, ca a a voir avec la predictions d'access memoire. Tu dois certainement te taper differente forme de dependance de donnee bizarre.

caelacanthe
caelacanthe
Niveau 10
16 février 2012 à 22:53:44

c'est g++ version 4.4.1, avec les options -Wall -O2 -s. je m'étais trompé la dernière fois, ce n'était pas gcc.

caelacanthe
caelacanthe
Niveau 10
16 février 2012 à 22:55:20
  • godrik Voir le profil de godrik

* Posté le 16 février 2012 à 22:52:38 Avertir un administrateur
* les boucles qui vont en arriere sont typiquement bien plus lente que les boucles qui vont de l'avant, ca a a voir avec la predictions d'access memoire. Tu dois certainement te taper differente forme de dependance de donnee bizarre.

:d) on m'avait dit le contraire, c'était en rapport avec la comparaison qui sert de limite... !=0 serait plus rapide que <limite. :(

je vais essayer en inversant le sens des boucles.

caelacanthe
caelacanthe
Niveau 10
16 février 2012 à 23:03:10

c'est très légèrement plus lent en remettant les boucles dans l'ordre, en fait. :(

godrik
godrik
Niveau 30
16 février 2012 à 23:18:02

la comparaison a 0 est plus rapide en effet. mais travers les tableau dans l'ordre est plus simple pour les prefetcheurs.

De combien de temps on parle la ?

as tu essayer un autre compilateur?

caelacanthe
caelacanthe
Niveau 10
16 février 2012 à 23:31:46

1750 millisecondes pour blitter 120000 images, 5700 avec la deuxième portion de code. :(

avec g++ 4.4.1, je viens d'essayer avec la version 4.5.2 et ça supprime la lenteur, en fait... une mise à jour du compilateur s'impose.

j'ai pas tellement d'autres compilateurs sous la main... éventuellement celui de visual c++ 2010 mais je pensais m'en tenir à minGW, qui est simple à configurer et ne requiert pas tellement de DLL que personne n'a à l'exécution. :peur:

godrik
godrik
Niveau 30
16 février 2012 à 23:45:52

Je pensais a un vrai compilateur, genre le compilo d'intel :)
Il y a eu plein de gros changement dans gcc recement. Donc essaie de maintenir un compilo a jour. De memoire, le compilateur de microsoft est de bonne facture, pour faire des test, ca peut valoir le coup d'essayer. Sinon, je ne sais pas a quel point on peut lier un fichier object compiler avec visual studio et linker avec gcc, mais ca peut etre a envisager.

caelacanthe
caelacanthe
Niveau 10
17 février 2012 à 00:11:34
  1. godrik Voir le profil de godrik
  2. Posté le 16 février 2012 à 23:45:52 Avertir un administrateur
  3. Je pensais a un vrai compilateur, genre le compilo d'intel :)

:d) à vrai dire, je rêve de mettre la main dessus, mais il est payant, autant que je sache... sauf sous linux, avec un contrat d'utilisateur très restrictif. le problème, c'est que le projet que je fais est très dépendant de windows, actuellement. :(

et puis, j'ai un processeur de chez AMD. pas sûr que le gain de performances soit aussi évident que sur un processeur Intel. :doute:

caelacanthe
caelacanthe
Niveau 10
17 février 2012 à 00:20:37

les performances sont sensiblement les mêmes (très légèrement supérieures, on passe sous la barre des 1700) sous visual 2010, avec toutes les optimisations activées. :ok:

_skip
_skip
Niveau 10
17 février 2012 à 09:56:23

Je m'excuse de cette question conne mais g++ a-t-il un système de précompilation de header comme vs2010 ou l'on peut rassembler dans un fichier (stdafx.h) ce qui revient tout le temps?

chris_27
chris_27
Niveau 10
17 février 2012 à 11:07:24

Ça veut dire quoi "précompiler des headers" ? (surtout que hors templates + options de compilation de niveau 12, il n'y a rien à compiler dans un fichier header)

godrik
godrik
Niveau 30
17 février 2012 à 19:05:38

oui, g++ sait precompiler des headers:

$ g++ foo.h

genere un fichier foo.h.gch.

De memoire, ca sert a rien... Mais je suis peut etre en erreur.

_skip
_skip
Niveau 10
17 février 2012 à 19:38:44

On dirait que ça se fait de manière transparente en effet sur g++. En principe ça permet d'éviter de recompiler les headers qui ne changent jamais ou presque à chaque fois qu'une inclusion a lieu.

godrik
godrik
Niveau 30
17 février 2012 à 20:06:56

Mais je ne comprends pas trop le but. Les headers sont relativement petit. Ce n'est jamais mamoutesque un header file. Ou quand c'est gros, c'est parce qu'il contient du code template qui n'est probablement pas precompilable.

Aussi, que ce passe t'il quand on change des variables du precompilateurs? Le code est recompiler? Ou bien est ce que ca evite juste l'analyse syntaxique?

Pseudo supprimé
Pseudo supprimé 21 février 2012 à 18:01:04

Salut ! J'ai une petite question, qui peut paraitre conne, mais je ne comprends pas... Pourquoi un octet = 256 ?

J'ai un gros problème de logique... on me dit :

Un chiffre binaire peut avoir deux états :

Ouvert ou fermé, 0 ou 1 en sommes.

Un octet contient 8 bits, je ne vois pourquoi on en arrive à 256 combinaisons possibles ?

Pourquoi le calcule 2*2*2*2*2*2*2*2 ?
Ça parait bête comme question, mais en gros dans ma tête je me représente un octet comme ça :

http://s4.noelshack.com/old/up/sans_titre-dbf1d0dc92.png

En gros j'en arrive à seulement 16 possibilités... je sais que j'ai une grosse erreur de logique, c'est pour ça que je préfère vous demander :)

caelacanthe
caelacanthe
Niveau 10
21 février 2012 à 18:34:44

http://s4.noelshack.com/1m/1/1/sanstitre-9938438e51.png je te le fais sur quatre bits sinon c'est trop long. :hap:

Pseudo supprimé
Pseudo supprimé 21 février 2012 à 18:37:03

En fait, j'imagine bien que ça doit être ainsi mais je ne comprends pas pourquoi...

Pocolo
Pocolo
Niveau 10
21 février 2012 à 18:38:51

A la limite si tu as vraiment du mal à voir pourquoi tu peux simplement essayer différentes combinaison jusqu'à dépasser 16 et là tu verras bien pourquoi...

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment