Par défaut, ils pourraient faire des paquets "propres" pour un usage local, ensuite n'importe qu'elle administrateur pourrait changer la configuration. Cela rendrait au moins l'auto-hébergement plus facile.
Lors que Mandrake avait sorti la "clic", une distrib pour cluster, il avait rendu rpmi distribuable sur un cluster, en utilisant un outil de copy p2p rapide. Ce genre d'outil aurait largement pu servir à la gestion d'un parc de machine.
Tu sais très bien qu'il y a un problème d’œuf et de poule qui donne un avantage énorme à Windows. Peut être que Steam fera la différence, on verra bien.
Et concernant les lib, souvent les programmes windows viennent avec leur propre lib.
On en sont les distributions sur ce genre d'application ? Je n'ai jamais compris pourquoi les applications web était souvent livré "à poil", voir pas du tout, dans les distributions linux. Pourquoi n'ont-elles pas le même statut que les applications classiques ? C'est si difficile de faire des paquets de configuration pour qu'un ensemble de logiciel marche ensemble ?
Tu veux que je te rappelle les procès autour de BeOS ? L'interdiction du dual boot pour windows ? La pression sur les prix de gros ? (qui a fini par se faire réguler). La guerre pour dégager Linux des premier Notebook (EEE Pc).
Le fait que dans un Windows du commerce, un tas d'éditeur ont payé pour être préinstallé sur les machines, ce qui en baisse artificiellement le prix.
Il faudrait des catégories et les classements associés. La taille du code après le passage du fichier dans gzip est aussi un bon indicateur de sa taille réelle.
J'ai participé au défit précédent. C'est assez sympa. L'interface de code en ligne n'est pas trop mal.
Cela manque par contre d'un peu d'aide au debug, comme le fait de pouvoir inscrire un truc sur les cases de chaque cellule. Le visionneur par défaut est joli mais totalement illisible.
Un des premiers (Neuman) m'a dit avoir écrit ~25k lignes de code, j'avais donc renoncé d'entrer dans le top 10. J'ai essayé de faire le mieux possible avec le minimum de ligne de code.
Je m'en suis sorti 86ième sur 560 avec 330 lignes de code (avec un "statement" par ligne, sinon cela ne veut rien dire). Oui, je m'auto félicite :)
Ton article date de 2004, même si il a raison dans le fond, on continue de faire à l'ancienne car le multithread est très couteux à faire, en 2015.
Il ne faut pas oublier non plus que Intel n'a plus de concurrent depuis des années. Il y a eu une course entre Athlon et Pentium4. Mais depuis l'architecture "core", AMD n'a jamais rien fait de sérieux depuis. Intel s'est endormis sur ses lauriers. AMD aurait pu ouvrir ses shaders et exposer plus facilement leur puissance, mais ils n'ont rien fait. C'est pourtant le seul domaine, ou il écrase encore Intel.
Dire qu'il aurait suffit d'un bon compilo openCL open source, ou d'une bonne api ouverte…
Je ne comprends pas vraiment le sens de ta question, mais je n'ai pas l'impression d'avoir dit ça.
Ce que je veux dire, c'est que changer ta machine est bien moins couteux pour la collectivité que de demander d'optimiser tous les logiciels que tu utilises.
Je ne sais pas combien tu as de RAM. Mais les machines sont bloqué à 4 Go depuis des années (10ans). Hors, l'augmentation des besoins mémoires à toujours été de l'ordre de +50%/an.
On disait à une époque qu'un ordinateur équilibré avait un cpu de 1 Mhz pour 1 Mbs de bande passante réseau pour 1 Mo de RAM. La fréquence et le nombre de cpu à grimper en flèche mais pas le reste.
En gros, passe à 8 ou 16 Go de ram si possible, et rajoute un SSD. Cela change tout.
Je crois que tu as mal interprété le propos d'Antoine qui se voulait ironique :)
Je sais mais il voulait sans doute dire que malgré que PHP est un outil de merde, facebook a réussi. Sauf qu'à l'époque, il n'avait trop de choix et qu'ils ont changer PHP pour correspondre à leur besoin (typage progressif, jit,…).
oui bien sûr. Dans le modèle derrière peuvent s'appliquer les mêmes méthodes de référence et de neutralité que pour wikipedia. On peut aussi ajouter un outil de traçabilité entre le code et des documents.
Disons que int est mappé sur la taille la plus pratique. Le C propose 3 type d'archi 16 32 et 64 bits. Le 16 bit est le minimum même sur µC avec registre 8 bits (qui sont souvent mixte 8/16 bits en fait). 32 bit est la norme pour ceux à registre 32 bits. Ce qui ont des registres 64 bits, utilise int en 32 bits, ce qui est incompatible avec les pointeurs 64 bits.
C'est pour ça qu'il y a 3 "sortes" de C. D'ailleurs, il n'est pas possible de faire un code sans ifdef qui reste compatible avec les 3 tailles de registres.
c'est lui qui sait comment les données sont organiser et qui va répondre au mieux aux demandes.
Non justement. Linux ne cherche pas à optimiser la bande passante global, ou le temps de fin global. Il essaye d'être juste ("fair") entre chaque flux IO. Il va donc faire un peu de tout, pour satisfaire tout le monde. Il va garantir une latence minimum pour tous. Or, on se fout qu'un des job soient très en retard. Sur un HD, on peut augmenter la bande passante réelle avec des "bandes" jusqu'à ~15 Mo. Plus l'accès est linéaire, plus la copie/lecture est rapide.
(par exemple elle se déclenchera quand tu aura vraiment mis de la pression sur ton allocation mémoire).
C'est justement de ce cas pathologique dont on parle : plein d'allocation suffisamment grosse pour aller dans la "zone vieille" mais à collecter ensuite. Je n'ai pas testé d'augmenter franchement la zone jeune, c'est peut être une autre solution (256Ko de mémoire).
Sincèrement la lecture de 10 000 fichiers c'est plus les accès disques qui vont te poser problème que l'allocation mémoire.
Pour mon cas, non. En bidouillant le GC d'OCaml, j'avais des perf en plus (10 % de mémoire), en multipliant la conso mémoire par 10 (en gros, le gc se déclenche beaucoup moins ouvent).
Lancer les lectures de manière asynchrone va probablement te permettre de passer un gap très important.
Dans le cas de lecture sur le même disque, je ne vois pas pourquoi. Je n'ai pas fait le test, mais je persuadé que tu va juste augmenter le nombre de "seek" et ralentir le tout. Cela se voit bien entre plein de copie en parallèle ou une liste de copie.
Les gc générationnels font déjà se boulot avec une granularité plus fine et de manière plus systématique que ce que tu ferra.
Surtout si ta mémoire est read only comme en Ocaml (le parsing se fait uniquement sur les string, sinon, il faudrait tout recoder avec "buffer"). Mais si tu as une génération jamais parcouru par le GC, c'est plus rapide non ?
Les sécurités et autre artifices qui entrent en jeux lors de la création d'un objet peut poser un vrai problème (et ne sont pas forcément facile à prendre en compte (mal grès l'utilisation de pool d'objet).
Dans Ocaml, c'est un déplacement d'un pointeur de pile. Dans le cas de mémoire à faible durée de vie, c'est ultra rapide. C'est ensuite, que cela se complique.
Au pire dans le temps réel dure, on ne fait pas d'allocation de mémoire du tout (Misra C). Ou on le fait uniquement après le démarrage de l'application, puis on y touche plus (type serveur graphique Arinc 661).
[^] # Re: distribution ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Auto-hébergement: pas toujours évident.... Évalué à 2.
Par défaut, ils pourraient faire des paquets "propres" pour un usage local, ensuite n'importe qu'elle administrateur pourrait changer la configuration. Cela rendrait au moins l'auto-hébergement plus facile.
Lors que Mandrake avait sorti la "clic", une distrib pour cluster, il avait rendu rpmi distribuable sur un cluster, en utilisant un outil de copy p2p rapide. Ce genre d'outil aurait largement pu servir à la gestion d'un parc de machine.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 3.
Tu sais très bien qu'il y a un problème d’œuf et de poule qui donne un avantage énorme à Windows. Peut être que Steam fera la différence, on verra bien.
Et concernant les lib, souvent les programmes windows viennent avec leur propre lib.
"La première sécurité est la liberté"
# distribution ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Auto-hébergement: pas toujours évident.... Évalué à 2.
On en sont les distributions sur ce genre d'application ? Je n'ai jamais compris pourquoi les applications web était souvent livré "à poil", voir pas du tout, dans les distributions linux. Pourquoi n'ont-elles pas le même statut que les applications classiques ? C'est si difficile de faire des paquets de configuration pour qu'un ensemble de logiciel marche ensemble ?
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à -2.
Je serais curieux de savoir pourquoi tous mes commentaires précédent se font fait moinsé.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 4.
Tu oublies le frein énorme au remboursement de la licence de windows inutile qui vient avec les portables, par exemple.
Rien n’empêche de faire un gros binaire statique un peu moche.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 7.
Tu veux que je te rappelle les procès autour de BeOS ? L'interdiction du dual boot pour windows ? La pression sur les prix de gros ? (qui a fini par se faire réguler). La guerre pour dégager Linux des premier Notebook (EEE Pc).
Le fait que dans un Windows du commerce, un tas d'éditeur ont payé pour être préinstallé sur les machines, ce qui en baisse artificiellement le prix.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 4.
Je n'ai jamais rien vu de plus ergonomique que "$ bc -l" tous les autres trucs nécessitent la souris à un moment ou l'autre.
"La première sécurité est la liberté"
[^] # Re: platinum rift
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Concours de programmation multijoueurs CodinGame le 6 Février 2015. Évalué à 3.
Dans le langage shoutout, le zip de code était la mesure de la taille du code. J'imagine qu'un compresseur trop puissant devait introduire un biais.
http://benchmarksgame.alioth.debian.org/u64/code-used-time-used-shapes.php
"La première sécurité est la liberté"
[^] # Re: platinum rift
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Concours de programmation multijoueurs CodinGame le 6 Février 2015. Évalué à 3.
Il faudrait des catégories et les classements associés. La taille du code après le passage du fichier dans gzip est aussi un bon indicateur de sa taille réelle.
"La première sécurité est la liberté"
# platinum rift
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Concours de programmation multijoueurs CodinGame le 6 Février 2015. Évalué à 6.
J'ai participé au défit précédent. C'est assez sympa. L'interface de code en ligne n'est pas trop mal.
Cela manque par contre d'un peu d'aide au debug, comme le fait de pouvoir inscrire un truc sur les cases de chaque cellule. Le visionneur par défaut est joli mais totalement illisible.
Un des premiers (Neuman) m'a dit avoir écrit ~25k lignes de code, j'avais donc renoncé d'entrer dans le top 10. J'ai essayé de faire le mieux possible avec le minimum de ligne de code.
Je m'en suis sorti 86ième sur 560 avec 330 lignes de code (avec un "statement" par ligne, sinon cela ne veut rien dire). Oui, je m'auto félicite :)
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 5.
Ton article date de 2004, même si il a raison dans le fond, on continue de faire à l'ancienne car le multithread est très couteux à faire, en 2015.
Il ne faut pas oublier non plus que Intel n'a plus de concurrent depuis des années. Il y a eu une course entre Athlon et Pentium4. Mais depuis l'architecture "core", AMD n'a jamais rien fait de sérieux depuis. Intel s'est endormis sur ses lauriers. AMD aurait pu ouvrir ses shaders et exposer plus facilement leur puissance, mais ils n'ont rien fait. C'est pourtant le seul domaine, ou il écrase encore Intel.
Dire qu'il aurait suffit d'un bon compilo openCL open source, ou d'une bonne api ouverte…
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à -1.
Ce que je veux dire, c'est que changer ta machine est bien moins couteux pour la collectivité que de demander d'optimiser tous les logiciels que tu utilises.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à 1.
Parce que tu crois que c'est gratuit ?!
Ma machine du boulot à 8Go de RAM et une compile sous Eclipse prend tout.
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à -2.
Les SSD commencent à 80€, qui peuvent servirent de disque système.
Avec moins de 500€, tu as tout en mieux :
http://www.materiel.net/ordinateur/materiel-net-nucleus-plus-100114.html
440€ pour avoir un meilleur cpu, ou 240€ pour avoir plus de RAM et un SSD ?
"La première sécurité est la liberté"
[^] # Re: Drôle de phrase
Posté par Nicolas Boulay (site web personnel) . En réponse au journal "Gummiboot UEFI Boot Loader" sera ajouté à Systemd. Évalué à -3.
Je ne sais pas combien tu as de RAM. Mais les machines sont bloqué à 4 Go depuis des années (10ans). Hors, l'augmentation des besoins mémoires à toujours été de l'ordre de +50%/an.
On disait à une époque qu'un ordinateur équilibré avait un cpu de 1 Mhz pour 1 Mbs de bande passante réseau pour 1 Mo de RAM. La fréquence et le nombre de cpu à grimper en flèche mais pas le reste.
En gros, passe à 8 ou 16 Go de ram si possible, et rajoute un SSD. Cela change tout.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 2.
Je sais mais il voulait sans doute dire que malgré que PHP est un outil de merde, facebook a réussi. Sauf qu'à l'époque, il n'avait trop de choix et qu'ils ont changer PHP pour correspondre à leur besoin (typage progressif, jit,…).
"La première sécurité est la liberté"
[^] # Re: un tableur en ligne
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Climat et logiciel. Évalué à 2.
oui bien sûr. Dans le modèle derrière peuvent s'appliquer les mêmes méthodes de référence et de neutralité que pour wikipedia. On peut aussi ajouter un outil de traçabilité entre le code et des documents.
"La première sécurité est la liberté"
# un tableur en ligne
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Climat et logiciel. Évalué à 2.
Je rêves d'avoir ce genre d'outil mais avec l'édition du code source en mode wiki. Cela permettrait aussi de valider le modèle qu'il y a derrière.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 7.
Oui enfin les zozo de facebook ont aussi écrit un nouveau langage 100% compatible php pour corriger les bugs. (the hack langage https://linuxfr.org/news/the-hack-language-php-avec-un-peu-de-typage-statique http://hacklang.org/ )
Cette vidéo sur le pourquoi, ils l'ont fait est super intéressante :
http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Hack
"La première sécurité est la liberté"
[^] # Re: Une chose que j'ai oublié d'ajouter
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 3.
Disons que int est mappé sur la taille la plus pratique. Le C propose 3 type d'archi 16 32 et 64 bits. Le 16 bit est le minimum même sur µC avec registre 8 bits (qui sont souvent mixte 8/16 bits en fait). 32 bit est la norme pour ceux à registre 32 bits. Ce qui ont des registres 64 bits, utilise int en 32 bits, ce qui est incompatible avec les pointeurs 64 bits.
C'est pour ça qu'il y a 3 "sortes" de C. D'ailleurs, il n'est pas possible de faire un code sans ifdef qui reste compatible avec les 3 tailles de registres.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 2.
J'imagine que la démonstration de "ça passe" doit être compliqué.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 2.
Non justement. Linux ne cherche pas à optimiser la bande passante global, ou le temps de fin global. Il essaye d'être juste ("fair") entre chaque flux IO. Il va donc faire un peu de tout, pour satisfaire tout le monde. Il va garantir une latence minimum pour tous. Or, on se fout qu'un des job soient très en retard. Sur un HD, on peut augmenter la bande passante réelle avec des "bandes" jusqu'à ~15 Mo. Plus l'accès est linéaire, plus la copie/lecture est rapide.
C'est justement de ce cas pathologique dont on parle : plein d'allocation suffisamment grosse pour aller dans la "zone vieille" mais à collecter ensuite. Je n'ai pas testé d'augmenter franchement la zone jeune, c'est peut être une autre solution (256Ko de mémoire).
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 2.
Pour mon cas, non. En bidouillant le GC d'OCaml, j'avais des perf en plus (10 % de mémoire), en multipliant la conso mémoire par 10 (en gros, le gc se déclenche beaucoup moins ouvent).
Dans le cas de lecture sur le même disque, je ne vois pas pourquoi. Je n'ai pas fait le test, mais je persuadé que tu va juste augmenter le nombre de "seek" et ralentir le tout. Cela se voit bien entre plein de copie en parallèle ou une liste de copie.
Surtout si ta mémoire est read only comme en Ocaml (le parsing se fait uniquement sur les string, sinon, il faudrait tout recoder avec "buffer"). Mais si tu as une génération jamais parcouru par le GC, c'est plus rapide non ?
Dans Ocaml, c'est un déplacement d'un pointeur de pile. Dans le cas de mémoire à faible durée de vie, c'est ultra rapide. C'est ensuite, que cela se complique.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 3.
Beaucoup de jeu utilise un énorme truc en C++ mais un langage de script pour le reste. Unity https://fr.wikipedia.org/wiki/Unity_%28moteur_de_jeu%29 utilise mono. D'autres utilisent Lua.
"La première sécurité est la liberté"
[^] # Re: Un langage complexe ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 4.
Au pire dans le temps réel dure, on ne fait pas d'allocation de mémoire du tout (Misra C). Ou on le fait uniquement après le démarrage de l'application, puis on y touche plus (type serveur graphique Arinc 661).
"La première sécurité est la liberté"