Jerome Herman a écrit 1870 commentaires

  • [^] # Re: Fausse idée sur les garbages collectors

    Posté par  . En réponse au journal Encore une histoire de récupérateur de mémoire. Évalué à 4.

    Il y a un autre cas où la gestion directe est quasiment indispensable: pour le temps-réel et tout ce qui s'en rapproche. Par exemple un synthé audio, ou bien un moteur de rendu pour un jeu.

    Alors en temps réel "dur" : ie garantie de temps de réponse (j'appuie sur le bouton et dans moins de cent cycles CPU il se passe quelquechose) le plus souvent oui. Encore que généralement pour faire du vrai temps réel dur il faut un kernel temps réel, ce qui implique pas mal de choses au niveau de l'architecture de l'OS lui même et du matériel sous-jacent.

    Mais en temps réel "mou" : ie garantie de temps d'éxecution (j'ai 200 threads qui tournent, je veux que tous les calculs soient finis dans 200ms) ca devient beaucoup plus discutable. En effet au niveau allocation mémoire les questions de type "ai-je le temsp de lancer un appel système pour libérer l'espace mémoire ?", "dois-je défragmenter la mémoire pour gagner des perfs ?", "puis-je utiliser un segment mémoire déjà dispo mais trop grand pour moi, ou dois-je en reserver un autre ?" etc. sont légions. Et très vite le besoin d'un arbitre se fait sentir (ben oui 200 threads qui discutent les uns avec les autres au niveau perf c'est moyen...). Et le garbage collector, quand il est bien conçu (et conçu dans cette optique) est un arbitre absolument fantastique. Avec la multiplication des coeurs (et donc des threads) je suis prèt à parier qu'il va devenir de plus en plus dur pour les programmeurs C de battre les GC dans une optique temps réel mou. Donc les jeux et les logiciels d'édition musicale risquent d'avoir recours à des GC de plus en plus souvent.
  • # Fausse idée sur les garbages collectors

    Posté par  . En réponse au journal Encore une histoire de récupérateur de mémoire. Évalué à 7.

    Dans un programme comme Ruby, Java ou autre, c'est au programmeur de gérer la mémoire lui même. C'est juste que 97% du travail est automatisé. Pour libérer un objet en mémoire il suffit de le déréférencer. Biens ur on peut accélérer les choses avec un destroy() quelconque mais généralement le simple fait de détruire les références vers l'objet suffit à faire que le garbage collector fera le ménage tout seul.

    Ca marche très très bien.

    En C c'est plus compliqué. Il faut spécifiquement libérer toute la mémoire que l'on a consommé. C'est long, c'est réberbatif, c'est casse pied et si on oublie quelquechose ca peut trainer en mémoire jusqu'à la fermeture du programme.

    Le SEUL avantage de l'accès mémoire direct au point de vue programatique (ie si on considère le surcout en mémoire du GC comme négligeable) est dans un cas bien précis :

    Si on objet a un accès passif à une ressource système (par exemple il écoute sur un port X)
    - En C : je sors le fusil à pompe, pan -> objet détruit. Je peux immédiatement relancer un autre objet sur le port X
    - En programmation GC : Je sors le pot de peinture rouge et je peints une jolie croix sur le dos de mon objet. Si j'essaye de relancer immédiatement un autre objet sur le port X je risque de me prendre une erreur de type "t'es mignon, mais le port X est occupé". Tout çà parceque le GC il dort, ou qu'il est déjà en train de donner des coups de fusil à pompe ailleurs. Je suis donc dépendant de son bon vouloir.
  • [^] # Re: Internationalized domain name!

    Posté par  . En réponse au journal Pourquoi Apple saymal !. Évalué à 10.

    Alors que eux, les adresses dans notre alphabet ne leur posent pas de problème car leur clavier est en gros le même que le notre.

    Bonjour, mon name est John et je completly comprendre ce que vous dites.

    J'ai un probleme tres likely avec les ponctuations et tous vos bizarres petites accents que je ne comprend pas ce que ca apporte à vous.
    On peut faire un tres bon francais sans use toutes ces trucs que juste les francais ont sur leur clavier. En plus Unicode ca prend beaucoup de la place alors que ANSI suffit.

    Moi je suis pour on a tous le meme clavier et on s'en sert tous pareils. Je va pas acheter 42 clavier pour tous mes internationaux clients non plus. Surtout que je fais plein de fautes a cause de toutes les lettres qui sont deplacees comme par expres.

    Donc je suis avec vous completly dans la croisade.
  • [^] # Re: On va essayer de répondre....

    Posté par  . En réponse au journal Performance MYSQL. Évalué à 6.

    a) grosso modo on tourne a 300 requetes / secondes avec des piques a 1200.

    Normalement ca devrait passer à condition de ne pas réétablir une connexion à chaque requète. Valider avec les devs que les connexions restent ouvertes un moment et servent à plusieurs requètes. Ca pourrait même valoir le coup de passer sur du pooling un peu costaud (penser à augmenter la mémoire dans ce cas là genre 8GB)

    b)On a de tout au niveau des requetes, de la toute simple et de la trés compliqué avec 10 jointures et des dizaines de conditions. par contre pas de procédures stoquées. Par contre les jointures font qu'aucune division des tables pour les répartir sur plusieurs serveurs n'est visible.

    Sur les requètes complexes on y gagne souvent à faire des vues, voire des vues stoquées mise à jour à intervalle régulier. Mais bon les vues stoquées et MySQL ca fait pas bon ménage.

    c) en moyenne une centaine.
    Là on a un problème : ca n'est pas normal que 100 utilisateurs fassent 300 connexions/seconde en soutenu. Il y a des mises à jour en continue (genre raffraichissement des données toutes les 5 secondes) ? Parceque sinon il y a un truc à creuser là. Je pense qu'une bonne partie de la logique de traitements/de filtres a du se retrouver dans les applis plutôt que sur le serveur. Si ca peut limiter le nombre de requètes ou la taille des données renvoyées il vaut mieux passer par des procédures stoquées.

    e) on a environ 200 tables qui sont quasiment en permanence toute utilisée.
    Ca par contre c'est largement en dessous de ce que MySQL peut faire. Une fois de plus un boost de mémoire devrait aider. Et comme les tables doivent être assez volumineuses il peut être bon de passer sur un RAID 10 (en gardant du SCSI/SAS, le Sata en accès concurrents c'est pas çà )

    Pour postgreSQL a vrai dire on utilise mysql depuis trop longtemps pour pouvoir changer de base de donnée comme ca.

    Il ne devrait pas y avoir de gros problèmes à faire la migration, surtout si il n'y a pas de procédures stoquées. Par contre après tu auras beaucoup plus de flexibilité pour répartir la charge, analyser les goulots d'étranglement etc.

    Bref vu ta situation pas de solution miracle. Je pense qu'il y a un peu de ménage à faire au niveau du code car le nombre de requètes me parait disproportionné vu le nombre d'utilisateurs...
  • [^] # Re: On va essayer de répondre....

    Posté par  . En réponse au journal Performance MYSQL. Évalué à 10.

    80% des problèmes de perf SGBD dont j'ai entendu parler étaient soit une requête mal écrite (plus de la moitié des cas), soit un manque d'index. A chaque fois on vient demander à l'admin système de régler le pb .... alors qu'il n'y peut rien.

    Il peut toujours faire porter le chapeau à l'équipe réseau. Qui normalement devrait se lacher sur la sécurité. Laquelle sécurité ira voir l'équipe projet pour lui transmettre l'impossibilté de changer les règles pour une appli. De fait le projet ira voir les utilisateurs pour dire que la sécurité ne veut pas changer les règles qui permettrait d'avoir des perfs digne de ce nom.

    Généralement les utilisateurs remontent à la direction pour pleurer.
    a) La direction a autre chose à foutre -> le système reste lent
    b) La direction tape du poing sur la table -> Une des équipes mentionnées plus haut en prend plein la gueule (rarement l'équipe projet ceci dit, car elle a un bien meilleur positionnement politique au sein de la boite).

    Quand on en est à ce stade la seule solution est de faire un devis pour du matos démesurément puissant (Genre demander un switch fibre 10Gb/s 48 ports et le cablage qui va avec si ca tombe sur le réseau)

    Après ca varie... Mais c'est vrai que l'argument "On a acheté à la demande du projet un matos 40 fois trop puissant qui est sur un circuit à part et ca rame toujours" augmente grandement les chances que la foudre tombe enfin sur les developpeurs. Mais dans la plupart des cas la demande d'achat est refusée, et ca sert d'argument dans les discussions houleuses qui suivent...
  • # On va essayer de répondre....

    Posté par  . En réponse au journal Performance MYSQL. Évalué à 6.

    La seule information que l'on a est qu'il y a enormément de requètes. C'est maigre.
    Il va falloir d'autres informations :
    a) c'est quoi enormément ? 100/min 1000/min 1M/min ?
    b) c'est quoi comme requète ? Requètes simples ? Requètes complexes avec jointure aggregats et conditions ? Appel de procédures stoquées avec des fonctions des 12Mo ?
    c) Combien d'utilisateurs simultanés sur la base , typiquement ? En pointe ?
    d) Quel est le volume des données retournées ? (Non parceque si c'est systèmatiquement des centaines de milliers de tuples sur une connexion 100Mb/s ca va grincer même si tu mets un cluster Oracle)
    e) Combien de tables sont accédées typiquement ? 1 ? 10 ? 100

    Attention pub gratuite

    De façon générale il faut préférer Postgres à MySQL en cas de forte charge. MySQL est plus rapide sur les requètes simples sur de petites tables, mais il scale très mal et de plus il est assez loin des normes SQL (sans compter qu'il n'y a pas de méthode pour mettre en cluster simplement)
  • [^] # Re: Tuyaux et compilation parallèle ?

    Posté par  . En réponse au journal GCC lent. Évalué à 8.

    - l'option -pipe pour éviter d'écrire des fichiers intermédiaires
    Ca dépend de l'espace mémoire nécessaire à la compilation. C'est bien beau de loger les intermédiaire de compilation en mémoire, mais si c'est pour que la compilation en elle même se fasse dans le swap c'est pas super rentable.

    deux processus par cœur de processeur pour optimiser la latence.
    Houlà ! C'est bien d'avoir un processus de plus que le nombre de CPU pour avoir toujours une suite compilation prête en mémoire quand un processus fini. Eventuellement si on a beaucoup de coeur ou une très grosses suite de petites compils on peut en mettre deux voire trois de plus que le nombre de CPU. Mais je doute fort que mettre 8 processus de compil sur un quadricore soit rentable (toujours pour des questions d'occupation mémoire). En tout cas ici sur mon Q6600 je vais plus vite avec 5 ou 6 process (5 pour le C++, 6 pour le C Ansi) qu'avec 8.
  • [^] # Re: GOTO : Nostalgie...

    Posté par  . En réponse au journal Sortie de PHP 5.3. Évalué à 1.

    J'aime pas les réponses toutes faites et en anglais. Mais là je fais une exception dans le but (illusoire, je sais) d'éviter un flamewar

    http://kerneltrap.org/node/553/2131
  • [^] # Re: News

    Posté par  . En réponse au journal Postgresql 8.4. Évalué à 8.

    Sauf évidemment si la news en question se résume à "PgSQL 8.4 est out ! Mouahahahaha !".

    On a droit au trolls sur l'innéficacité de MySQL et le grave danger qu'il représente (et que seuls les idiots pourraient ignorer) depuis qu'il a été racheté par Oracle ?
  • [^] # Re: danger

    Posté par  . En réponse au journal Mono: C’est un grave danger et seuls les imbéciles l’ignoreront, jusqu’au jour où il sera trop tard.. Évalué à 2.

    Et pour remonter le disque dans l'autre sens sous windows : format x:
  • # Entièrement d'accord avec ta démarche

    Posté par  . En réponse au journal Pas de section linux.ubuntu dans les forums ?. Évalué à 4.

    D'ailleurs j'en profite pour demander la création de la section BSD avec en sous-sections BSD.MacOSX et BSD.divers
  • [^] # Re: MTU

    Posté par  . En réponse au message Constat improbable!. Évalué à 6.

    C'est pas 1492 la taille max qui va bien du MTU pour ethernet ?

    Non c'est 1500, 1492 c'est quand il faut réserver 8 octects pour une encapsulation (PPoE par exemple)
  • [^] # Re: trop dur

    Posté par  . En réponse à la dépêche Grand quizz des 11 ans : connaissez-vous bien LinuxFr.org ?. Évalué à 4.

    "Quelle animal habite le bouchot DLFP ? "
    Le modérateur papophile

    "Qu'est ce qui va plus vite que l'internet ?"
    Le photon SNCF

    "Quelle URL ne va pas bien passer sur le site"
    http://goatse.cx
  • [^] # Re: C'est pas nouveau

    Posté par  . En réponse au journal Le 9/11 journalistique. Évalué à 4.

    Hérétique !

    Le culte de la Licorne Rose Invisible


    Hérétique toi même : la licorne est invisible et rose et non pas le contraire.
    N'importe quelle licorne rose peut devenir inivisible, mais la licorne invisible et rose était invisible bien avant de devenir rose et elle est restée invisble tout en devenant rose ! C'est bien ca le miracle de sa roseur !

    Tu devras lui sacrifier deux pizzas hawaïennes avec supplément ananas frais pour te faire pardonner.
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 2.

    Non, ils vont écouter les scientifiques ne serait-ce que parce que même les lobbyistes vont sentir qu'ils n'ont pas le choix

    Bien sur je vois bien greenpeace ou Nicolas Hulot militer pour le nucléaire et contre l'éolien ou la voiture électrique.

    Mais des choses sont en train de se faire, même si c'est insuffisant, et le mouvement va s'accélérer.

    C'est bien ce qui m'inquiète. Même si on réduit notre taux carbone en généralisant les batteries Lithiums-Ions ou au plomb, j'ai bien peur que l'on ne fasse que changer de problème pour un autre plsu grand.
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 2.

    je crois qu'un vote blanc aurait plus de signification, dans ton cas
    J'ai voté blanc pendant deux ans. On se lasse. Et puis ca me donne l'impression de dire "Je veux un parti qui propose un autre deux et deux font cinq"

    mais le fait qu'il y en ait une prouve qu'on va dans la bonne direction
    Ne pas écouter les scientifiques parcequ'on en a rien à foutre risque d'avoir au final à peut prêt le même impact que de ne pas écouter les scientifiques parceque les lobbyistes gueulent plus fort.

    Parce que sans eux, sans les politiques, il se passera rien.
    Alors qu'avec eux on pourra continuer à faire de grands moulinets dans le vide pour se donner bonne conscience...
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 2.

    mais ne rien faire d'autre pour changer cet "état de fait" que de ne pas voter ...

    Mais qui te dit que je ne fais rien d'autre ?
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 2.

    a) Je ne crois sincèrement pas qu'il y aurait enocre une sécurité sociale digne de ce nom pour la fin de mes jours si je devais vivre jusqu'à 80 ans.
    b) Je ne pense même sincèrement pas finir mes jours en France.
    c) Je ne considère pas comme anormal de cotiser pour des services que je n'utilise pas (pas encore ?) mais toujours est-il que l'argument "tu es incivique car tu ne vote pas mais tu utilises quand même la sécu" tombe quand même à plat.
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 1.

    Comment est-ce que tu pourrais te sentir moins coupable en étant pas inscrit qu'en l'étant ?

    Je te rassures tout de suite, c'était une figure de style. je ne me suis pas une seule fois senti coupable alors que j'étais abstentionniste et sur les listes.

    Mon abstentionnisme est tout à fait cartésien : ayant reçu une formation mathématique poussée, je ne peux en aucun cas voter pour un parti qui prétend pouvoir faire que gràce à lui, demain, si il est élu, deux et deux feront cinq.

    Peut-importe qu'ils croient pouvoir améliorer la situation en insistant sur l'aspect capitalistique, sur l'aspect social ou sur la sécurité. Peut-importe qu'ils croient pouvoir sauver le monde à coup d'éoliennes, d'émission monétaire massive ou de rythmes karmiques. Ils se fourent le doigt dans l'oeuil (ou plutôt car je ne les pense pas aussi bêtes que celà, ils nous prennent pour des cons).

    A noter que la plupart des partis en France en résolu ce léger problème de confrontation au réel en envoyant les prospectus d'intention le plus tard possible et en ayant des programmes plus nébuleux que la photo de la nébuleuse d'Orion par Hubble avant que l'on corrige sa miopie.

    Au final l'ensemble des partis pratique à outrance la publicité mensongère, mensongère dans le sens ou aucun parti ne dit "le monde a complètement changé, tous nos modèles sont cassés il faut recosntruire de nouveaux modèles". Le communisme et le socialisme ont explosés (et ne se remmettrons pas en route de si tôt, les pays emmergeants qui le finnancaient pour nous n'ayant pas la volonté de redevenir surexploité). Le capitalisme s'effondre sous le poids de la course au crédit (le financement de tout et n'importe quoi par les banques étant désormais révolu). L'écologie est passé du stade de science respectable à celui de phénomène de mode (ou le mot d'ordre semble être tout sauf les ennergies d'hier, même si la pollution est quantitativement identique ).

    Tous promettent un "mieux" et tous se gauffrent car ils tentent de remettre debout un monument en ruine. Maintenant tant qu'ils promettent que deux et deux feront cinq demain ils ne laissent aucune place à un parti qui oserait annoncer la vérité. Les gens veulent pouvoir acheter une voiture, une maison, se marier, avoir des enfants, et profiter de leurs vacances/retraite; et malheur à qui s'amuserait à dire "désolé, mais ca ne va pas être possible".

    La question n'est pas de savoir si il faut casser le système pour en reconstruire un autre : le système est déjà cassé. Et je ne peux donc pas voter pour qui que ce soit qui prétend pouvoir le sauver, quelques soient les moyens qu'il prétend employer...
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 2.

    Par contre tu bénéficie de la sécu.

    Je n'ai pas couté un centimes à la sécu en plus de 14 ans.
    Par contre comme je suis patron je cotise au plus fort pour tout un tas de chose auquelle je n'ai pas droit.
    Et comme si ca ne suffisait pas je remplis les caisses de l'état au rythme de deux paquets de clopes par jour...

    Mauvaise approche pour me faire sentir coupable.
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 7.

    60% d'abstention, elle est là l'insulte. Une insulte à tout ces gens qui sont morts pour protéger la démocratie et nos libertés.

    Houlà ! La parodie grand guignolesque proto-démagogique qu'on nous inflige en ce moment est une insulte bien plus grave à ceux qui voulaient le respect des droits de l'homme et la gouvernance du peuple par le peuple.

    Alors, j'espère que les futurs abstentionnistes auront encore plus mauvaise conscience la prochaine fois.

    Honnêtement pour ne plus me sentir visé lors par les menaces à peine voilée des défenseurs de la démocratie occidentale moderne, je ne suis carrément plus inscrit sur les listes. Comme ça je dors l'esprit tranquille...
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 4.

    Je crois dans la vertu du débat d'idée et pas à la violence en première intention.
    Tu débattrais avec un sous-citoyen ? Mais non alons il faut tout au plus les éduquer...
  • [^] # Re: Abstention

    Posté par  . En réponse au journal Parti pirate au Parlement. Évalué à 4.

    Les abstentionnistes sont des sous-citoyens.
    Attention, tu vas faire dégénerer ton troll vers le godwin trop vite...

    Ils sont dangereux pour la démocratie.
    Ah bon ? Je croyais que c'était ceux qui votaient pour des partis extremistes ? On m'a toujours dit d'apprendre à me méfier des votants, si ca se trouve il y a marqué FN sur le bulletin qu'ils glissent dans l'urne.

    J'espère qu'à la cantine, il y aura un abstentionniste qui va vouloir ramener sa fraise, je suis chaud.
    Tu feras au moins un vote à main levé pou savoir si il faut lui casser la gueule ou le castrer j'espère...
  • [^] # Re: D'apres toi ?

    Posté par  . En réponse au journal Quand on veut, on peut.. Évalué à 3.

    Oui, mais il n'y a aucun sens a ne pas avoir de Windows 2000 patche

    Euh tu veux vraiment la liste des progiciels qui ne sont plus garantis si on change le service pack d'un windows. J'en ai des piles entières.
    Windows 2000 SP4 et XP SP3 cassent pas mal de choses comparés à windows 2000 nu ou windows XP nu. Et les boites qui fabriquent des progiciels banquaires/ des pilotes matériels un peu chiadés/ des interfaces temps réel etc. ont pas forcément envie de refaire passer les 128000 tests nécessaires à la certification de leur biniou.
    J'ai même une usine parmis mes clients qui a encore du NT SP3. Pourquoi ? Parcequ'il y a plusieurs millions d'euros de machines derrière et que le fabriquant fait sauter ses garanties si on met à jour... Comme les machines ne sont pas du tout reliées à internet (ni même à un vrai réseau) il n'y a pas à proprement parler de problème.

    et c'est ce que les distrib Linux ne sont pas capable de faire pour la plupart vu que la periode de support de la plupart des distribs et de genre 2-3 ans

    Tout à fait, mais hors de cette plupart de distribs, il y a des distribs qui sont garanties 10 ans (et également plus si tu es prêt à payer).
    La grosse différence est : si tu n'es pas prêt à payer pour un support complet mais que tu as besoin de backporter UNE fonctionnalité. Sous windows tu l'as d'office dans l'os, sous linux il te reste une chance.
  • [^] # Re: D'apres toi ?

    Posté par  . En réponse au journal Quand on veut, on peut.. Évalué à 3.

    99% des softs qui tournaient sur Windows 2000 sans service pack tournent sur Windows 2000 SP4 + les derniers patchs.

    A dans ce sens là effectivement il y a pas trop photo. C'est dans l'autre que c'est plus problematique. A savoir prendre un soft qui sort aujourd'hui et l'installer sur windows 2000 à peine ou non patché.