(ɔ) CC-SA ↄ⃝

Author Archive

La Distinction, la barrière et le niveau

Pierre Bourdieu est un sociologue béarnais. Son ouvrage La Distinction (1979) est considéré comme l’un des dix plus importants travaux en sociologie du siècle. Dans cet ouvrage, Bourdieu définit la lutte pour la distinction et qui transforme des différences très faibles en différences radicales puisque hiérarchisées.

Les gens sont constamment pris entre deux intentions contradictoires. Pour être reconnu, il faut s’y distinguer, mais s’y distinguer conduit aussi à en être écarté. Chaque personne essaye de s’ajuster à la juste mesure entre la distinction et la conformité. Avoir du style, c’est suivre la mode tout en s’en détachant par quelques touches personnelles.

Dans ce schéma, plus on a du capital (social, culturel, économique) plus on se trouve en haut. Si son capital culturel est prédominant, on se retrouve à gauche. Et si c’est plutôt le capital économique, on se trouve à droite. Ces idées avaient déjà été publiées bien plus tôt : La barrière et le niveau (1925), par un autre français, Edmond Goblot qui détestait la Bourgeoisie.

Licences GFDL et CC-BY-SA Wikipédia


À Hong Kong, les dernières heures de liberté avant l’intervention chinoise

Voici l’excellent article de Dominique Moïsi. En gras deux passages qui m’ont particulièrement fait réfléchir. Tout en bas, mes réflexions.

https://www.lesechos.fr/idees-debats/editos-analyses/a-hong-kong-les-dernieres-heures-de-liberte-avant-lintervention-chinoise-1141258

Par Dominique Moïsi
Publié le 18 oct. 2019
Les Échos

Vivons-nous les derniers jours de Hong Kong, comme cité-monde asiatique, où règne encore l’état de droit ? Cet appendice de liberté se sent de moins en moins chinois, et de plus en plus solitaire, dans sa tentative désespérée de rester lui-même. Il n’y a pas si longtemps de cela, les Occidentaux en mal de liberté, de créativité, bref d’oxygène, venaient se réfugier dans ce territoire, l’espace d’un week-end, après des séjours trop « ordonnés » à Singapour ou à Shanghai. Aujourd’hui, les riches citoyens de Hong Kong ouvrent des comptes en banque à Singapour. Hier, lorsque l’on prenait le ferry pour aller d’une rive à l’autre, l’odeur de Hong Kong évoquait celle des canaux de Venise. Aujourd’hui, la ville semble dominée par l’odeur des fumigènes utilisés sans retenue par la police. La montée de la violence, l’incapacité des autorités de Hong Kong à rétablir l’ordre, après avoir délibérément semé le désordre – en remettant en cause le statu quo -, ne constituent-ils pas le prélude à la reprise en main musclée et directe des territoires par Pékin ? Comment un régime autoritaire qui retrouve avec Xi Jinping une centralisation extrême, sinon son essence totalitaire , pourrait-il tolérer une révolte qui, avec le temps, est devenue une révolution ? Chaque jour qui passe, les citoyens de Hong Kong semblent narguer davantage le dernier empereur communiste en contestant la légitimité des autorités de la ville.

A Pékin, le pouvoir peut laisser entendre que seul le sort de Taïwan les préoccupe vraiment. C’est un leurre. La Chine prépare sa revanche qui interviendra le moment venu. Maintenant que les cérémonies du 70e anniversaire de la création de la République populaire sont passées, ce moment s’approche irrésistiblement.

Dans une comédie légère des années 1960, « La souris qui rugissait », une minuscule principauté européenne faisait céder les Etats-Unis en s’emparant par mégarde de leur arme atomique. La cité asiatique mondiale ne dispose d’aucune arme secrète pour faire céder la Chine. Elle n’est plus la poule aux oeufs d’or d’hier, même si elle demeure une puissance financière significative, même si de riches Chinois, y compris dans la famille de Xi Jinping, y ont des biens importants.

Vue de Pékin, la contestation par la rue de l’ordre chinois est une humiliation inacceptable, insupportable même. Si la Chine ne punissait pas avec sévérité les territoires indisciplinés, ses ennemis verraient dans sa retenue de la faiblesse, et non, une sage modération. Tant pis si une intervention musclée affaiblit, de manière temporaire, le soft power de la Chine et son pouvoir de convaincre. Son pouvoir de contraindre est plus important à ses yeux.

Tant pis si la violation de la formule « un Etat, deux systèmes » renforce Taïwan dans sa volonté d’indépendance, et les citoyens de Hong Kong dans un esprit de résistance qui ne peut que grandir avec le temps. Les plus nostalgiques de la liberté partiront vers le Canada ou l’Australie, s’ils veulent rester en Asie-Pacifique. Les autres s’adapteront et se draperont derrière le nationalisme et la fierté patriotique des continentaux. En ce qui concerne Taïwan, 2049 est encore loin, il sera bien temps de faire revenir l’île démocratique au sein de la Chine pour le 100e anniversaire du régime. C’est tout simplement une question de taille : le plus gros finit par absorber le plus petit.

La situation à laquelle autorités et citoyens de Hong Kong se trouvent désormais confrontés est-elle simplement le produit de l’incompétence des premiers et de la fuite en avant des seconds ? Et quel est le rôle de Pékin dans cette affaire ? « Ces événements nous dépassent, feignons d’en être les organisateurs », écrivait Jean Cocteau dans « Les Mariés de la tour Eiffel ». Xi Jinping est-il un disciple de Cocteau ou a-t-il dès le début conçu le plan d’une remise en cause de la spécificité de Hong Kong ? Sans verser dans la théorie du complot, l’incompétence, apparente ou réelle, de Carrie Lam ne sert-elle pas son dessein révisionniste et unificateur ?

Pourquoi garder « deux systèmes », en effet, si le modèle autoritaire à la chinoise est en train de s’imposer comme une alternative crédible au modèle démocratique à l’occidentale ? Modèle qui lui-même, il est vrai, n’est plus ce qu’il était. Certains manifestants dans les rues de Hong Kong peuvent bien brandir le drapeau américain ou britannique et brûler le drapeau chinois. Mais l’Amérique de Donald Trump ou la Grande-Bretagne de Boris Johnson méritent-elles encore que l’on meure pour elles ?

Qui disait que seul un régime démocratique pouvait, par une croissance continue de son économie sur une longue période, voir le revenu moyen de sa population dépasser les 10.000 dollars ? La Chine l’a fait avec une espérance de vie de ses citoyens qui a plus que doublé en soixante-dix ans, passant de trente-cinq à soixante-dix-sept ans.

La conviction ultime des dirigeants chinois est que – tout comme les dirigeants de la ligue de basket-ball aux États-Unis, qui se sont excusés auprès de Pékin après les déclarations « pro-Hong Kong » d’un des leurs – la majorité des gens aiment l’argent plus que la liberté et la démocratie. Une interprétation du matérialisme historique qui n’était pas nécessairement celle de Karl Marx. Après la répression sur la place Tiananmen, il y a trente ans de cela, les critiques ont été plus virulentes que durables. Aujourd’hui, Xi Jinping semble convaincu que le temps joue en sa faveur. Il joue en quelque sorte la montre et est persuadé que le gouvernement de Hong Kong sera incapable à lui seul de rétablir l’ordre. A un moment donné, une fracture s’approfondira entre les plus modérés et les plus radicaux des manifestants.

Cette stratégie a un coût. En remettant en cause la formule « un État, deux systèmes », la Chine plonge Hong Kong dans la violence et la récession. L’ambition de Xi Jinping est-elle de renforcer les places financières européennes face à Hong Kong ?

Dominique Moïsi est conseiller spécial de l’Institut Montaigne.

Dominique Moïsi

Ma compréhension :

Le gouvernement autoritaire de la Chine utilise les émeutes de Hong-Kong pour convaincre les chinois continentaux de rejeter le modèle néolibéral de Hong-Kong, dernier reliquat démocratique. L’incapacité de la police de Hong-Kong à rétablir l’ordre est une opportunité pour la Chine continentale qui va pouvoir justifier son intervention.

Finalement, les manifestants voulant préserver l’autonomie de Hong-Kong sont utilisés pour unifier les chinois continentaux derrière la main mise de la Chine continentale. La conséquence des manifestations sur le long terme serait une petite baisse du PIB de Hong-Kong, une émigration partielle des hongkongais, une baisse passagère de l’immobilier.

Les démocraties mondiales ne font pas grand chose pour aider Hong-Kong. Les démocratie en Afrique n’ont jamais bien fonctionné. La démocratie des USA conduit à l’isolationnisme. Et en Europe ? Les français sont à 20 ans dans la rue pour défendre leurs retraites !

La Chine continentale colonise, se mondialise, et propose un modèle alternatif aux démocraties.

L’évolution de ces 10 dernières années a été phénoménale dans tous les domaines. Le temps s’accélère. Et dans les 10 prochaines années ? Dans 50 ans ?


Les trois secrets pour être efficace au quotidien

C’est facile d’être performant une journée, mais comment tenir dans la durée ?

Se respecter

Sortir dehors, courir, se balader, faire du sport, même si c’est quelques dizaines de minutes, ça fait du bien, physiquement mais aussi mentalement : on se sent vivre, et voir les résultats devant le miroir est motivant.

Limiter les addictions : caféine, nicotine, médicaments, alcool, drogues… Ce sont des substances que l’on commence à consommer ponctuellement et qui s’installent au quotidien. Notre corps n’en a pas besoin. Libérons notre corps de ces dépendances. Par contre, rien nous interdit d’en consommer ponctuellement, avec des amis (alcool) ou quand on a un travail important à réaliser en toute urgence (café, médoc). Un café n’a plus le même effet quand on en consomme plusieurs fois par jour ! Réservons-le quand c’est vraiment nécessaire.

Dormir. Pourquoi se forcer à travailler quand on sait que le lendemain on se sentira fatigué et les décisions prises ne seront pas forcément très pertinentes. Se cocher de bonne heure permet de profiter des meilleures heures de sommeil : celles avant minuit. Plus besoin de mettre de réveil. Si on finit par se sentir reposé une heure avant, tant mieux : on peut commencer à travailler chez soi 🙂 Et on dépend moins du café 🙂

Se faire plaisir. Par exemple, j’ai mon bureau dans un petit coin de la cuisine. Eh bien, je trouve le bon côté : je suis plus proche de la théière. 😋 Même une tâche ingrate dont on connaît l’importance peut être positivée.

S’organiser

Se concentrer sur les tâches qui font la différence. Certaines sont chronophages et apportent peu de gain. D’autres, ne prennent pas trop de temps, mais sont très valorisantes.

Harmoniser ses objectifs. On n’a pas le temps de faire tout ce que l’on aimerait. Alors, on commence sa journée par éliminer/sélectionner ses objectifs trouver l’équilibre entre facile/difficile : prendre rendez-vous, étudier, voir un ami, faire du sport, voyager…

Donner un sens à sa journée. Organiser sa TODO list pour refléter sa progression.

Identifier le succès du jour, la tâche qui donne la sensation d’avoir réussi sa journée. Et commencer par cette activité dès la première heure. Plus tôt, cet objectif sera atteint, plus tôt on se libérera.

Ne pas travailler beaucoup, mais travailler bien. Les bosseurs sont souvent bien vus. Mais est-ce que leurs tâches vont toutes dans la même direction ? Une TODO list ne doit pas être utilisée comme une succession de tâches pour se sentir occupé. Prendre du recul et éviter de perdre son temps et sa santé.

Positiver ses échecs

Échouer c’est bien. Car échouer c’est avoir essayé. Comme on apprend en se trompant, plus on échoue plus on apprend. Le pire ennemi du succès c’est la peur de l’échec.

Échouer rapidement, c’est apprendre rapidement. Mettons en place les techniques pour échouer rapidement. En développement logiciel, c’est par exemple l’intégration continue. Plus vite on est au courant de l’anomalie, plus facile sera sa correction.

Être fier de ses erreurs. Au début de ma carrière, j’avais corrigé au dernier moment un bug dans la télécommande très haut de gamme Pronto Pro commercialisée par Philips. Mais au bout de quelques semaines, un bug mystérieux rendait la télécommande inopérante. Au bout de quelques mois, nous avions pu mettre la main sur ce bug introduit lors de ma correction de bug. Toute mon équipe venait d’apprendre l’importance d’être extrêmement attentif aux modifications du code source avant la livraison du produit.

Compter ses échecs, pas ses succès. Par exemple, un développeur peut compter chaque jour, le nombre de fois que le compilateur (ou les tests unitaires) n’a pas voulu de son code source. Un commercial, c’est, par exemple, le nombre de réponses négatives par semaine. Avoir beaucoup échoué, c’est avoir beaucoup essayé, c’est donc avoir beaucoup travaillé. Donc, au lieu de dire “j’ai réussi trois fois aujourd’hui”, disons “j’ai échoué dix fois aujourd’hui”. Mettons en valeur nos échecs.


Pénurie de médecins d’ici 15 ans

Ce document de la CPAM est très intéressant :
http://www.ameli.fr/assures/votre-caisse-paris/vous-informer/la-demographie-medicale-a-paris_paris.php

Deux fois plus de dentistes à Paris quitte dans le reste de la France. Et même trois fois plus de spécialistes.

Peu d’ambulances à Paris, mais les taxis conventionnés ont doublés en deux ans.

Les kinés (17%) et dentistes (15%) représentent un tiers de l’ensemble des professionnels de santé. Puis tous les spécialistes (34%) hors orthopédistes/orthophonistes qui sont comptés à part (?)

La carte de la page 13 révèle que la concentration et le secteur des médecins dépend de l’arrondissement. Ainsi, le 8ème à la concentration la plus élevée et des tarifs élevés. Mais c’est aussi un arrondissement peu pourvu en établissements médicaux !

Mais ce qui fait peur ce sont les pyramides des ages : énormément de médecins en exercice ont plus de 55 ans. Les hommes prennent leur retraite plus tard que les femmes. Mais les nouvelles générations de médecins sont trop peu nombreux. La pyramide est inversée. On va droit vers le mur !

C’est sûr, le gouvernement aura du mal à obtenir des réductions des tarifs et en même temps inciter les vocations…


Pénurie de médecins d’ici 15 ans

Je découvre par hasard ce document sur le site ameli.fr. On y apprend que les dentistes sont deux fois plus nombreux à Paris que dans lire reste de la France. Pour les spécialiste, l’écart est encore plus important : trois fois plus à Paris ! Et le nombre de taxis conditionnés a doublé en deux ans, faut dire qu’il y a moins d’ambulances à Paris… Les dentistes (15%) et les kinés (17%) représentent un tiers de l’ensemble des professionnels de santé. Un autre tiers (34%), tous les spécialistes autres que orthopédistes/orthophonistes. D’ailleurs je ne comprend pas cette exclusion … La carte de la page 13 représente, arrondissement par arrondissement, là proportion de médecins pour 10000 habitants, et indique aussi la proportion selon le secteur (conventionné, secteur 2…). Le 8ème obtient la plus grosse concentration et les tarif les plus chers ! Mais c’est aussi, l’arrondissement peu pourvu en établissements médicaux ! Mais ce qui fait peur ce sont les pyramides des ages : énormément de médecins en exercice ont plus de 55 ans. Les hommes prennent leur retraite plus tard que les femmes. Mais les nouvelles générations de médecins sont trop peu nombreux. La pyramide est inversée. On va droit vers le mur ! C’est sûr, le gouvernement aura du mal à obtenir des réductions des tarifs et en même temps inciter les vocations…


Économie et Théorie de l’évolution

Quel lien entre le niveau économique d’un pays et la proportion évolutionniste de sa population ?

En France, 80% des personnes adhèrent à la théorie de l’évolution (80%), et donc, très peu de débat entre créationnisme et théorie de l’évolution. D’ailleurs, je connais seulement une poignée de créationnistes dans mon entourage (deux catholiques et trois musulmans).

Par contre, aux USA c’est très différent : il y a autant d’évolutionnistes (40%) que de créationnistes (40%), et une grande minorité qui ne sait pas (20%).

Voici un graphique de Calamities of Nature qui présente une relation entre l’adhésion à la théorie de l’évolution et le niveau économique, avec les USA comme anomalie : la seule puissance économique à avoir aussi peu d’évolutionnistes (voir aussi les explications en Anglais sur Rational discovery blog).

axe y: Percentage of the Public that Believes in Evolution. axe x: Gross Dosmetic Product Per Capita adjusted for purchassing power parity (PPP)

Ce graphique montre en nuage de points chacun des pays parmi les plus grandes puissances économiques. Sur l’axe des Y, le pourcentage d’adhésion des populations à la théorie de l’évolution. Sur l’axe des X, le PIB par habitant en parité de pouvoir d’achat (PPA). Tous les points suivent une même tendance, une courbe reliant l’adoption de la théorie de l’évolution au PIB-PPA/habitant, sauf un : les USA.

Par contre les pays limitrophes aux USA comme le Canada, le Mexique, mais aussi d’autres puissances comme la Russie, la Chine, l’Inde, le Brésil et l’Australie n’apparaissent pas. Donc, attention, pas de conclusion hâtive sur une éventuelle exception des USA. La preuve, j’ai rajouté le Luxembourg qui n’apparaissait sur le graphique original, qui semble aussi être un point singulier.

La quasi totalité des pays de l’Union Européenne (et la Turquie) sont présents, et c’est l’occasion de se comparer entre pays voisins 🙂

  • Commençons par le pays reconnaissant le moins la théorie de l’évolution : la Turquie avec 30% d’évolutionnistes et 50% de créationnistes. Mais c’est aussi le pays de l’étude dont le PIB-PPA/habitant est le plus faible.
  • Viennent ensuite, avec des PIB-PPA/habitant modestes et entre 45% et 65% d’évolutionnistes :
    • Chypre (45%) ;
    • les pays de l’Est (les points en jaune) ;
    • et les Balkans.
  • Suivent des pays réputés très croyants (peut être un lien?)
    • Dans le même lot que les pays précédents : Malte et Portugal avec 60% d’évolutionnistes
    • Avec un peu plus d’évolutionnistes et un PIB-PPA/habitant supérieur : Irlande et Italie avec 70% d’évolutionnistes
  • Je suis étonné de constater que des pays de l’Europe centrale sont encore plus créationnistes. Autriche, Suisse et Finlande sont proches de l’Irlande en terme de PIB-PPA/habitant. Et que dire du Luxembourg ?
  • Nous arrivons à l’autre extrémité, les pays de l’Ouest et du Nord ont plus de 70% d’évolutionnistes et des PIB-PPA/habitant élevés
    • Pays-bas très proche du groupe précédent
    • Allemagne, Espagne, Belgique, Norvège et Angleterre avec plus de 70% d’évolutionnistes
    • France, Suède, Danemark et Islande avec 80% et plus d’évolutionnistes
  • Le Japon (80%) est aussi dans ce dernier groupe de tête

La source initiale est un article de Science Magazine du 11 août 2006, dont deux exemplaires sont disponibles :

Pour info : En 2007, l’Union Européenne a adopté un texte sur les dangers du créationnisme dans l’éducation.


[Firefox] Afficher les miniatures du nouvel onglet

Depuis 5 ans, le speed dial est disponible sur le navigateur Opera : c’est les miniatures de sites web sur un nouvel onglet vierge.

Cette fonctionnalité fait immédiatement son apparition sur Firefox sous forme d’un addon. Et  depuis Firefox 13 (juin 2012), cette fonctionnalité est supportée nativement.

Cependant, les miniatures ne s’affichaient pas au premier lancement de mon Firefox 15 (suite au démarrage de l’ordinateur).

Merci au blog wyman.fr qui m’a mis sur la piste :
Activer les deux paramètres browser.allTabs.previews et browser.ctrlTab.previews.
(l’activation d’un seul des deux paramètres ne suffit pas)

Et voilà le test après avoir redémarré l’ordinateur :


Les téléphones “Intel inside” débarquent !

Les processeurs Intel sont historiquement de type x86. Et c’est effectivement le cas leurs Atom pour smartphone.
Et donc, CISC rentre à nouveau en compétition contre RISC (les SoC ARM).

A chaque fois, on a cru à la fin du CISC :

  • Les années 1990 : les processeurs PowerPC devaient démocratiser le RISC et par conséquent enterrer le CISC.
  • Les années 2000 : les processeurs Itanium devaient mettre les CISC et RISC au placard avec EPIC.
  • Les années 2010 : les SoC de type ARM devaient mettre un terme au quasi monopole de Intel, même sur le segment des PC de bureau et des serveurs…
    Mais les smartbook et les chromebook basés sur ARM se font rares, alors que le téléphones Intel insidefleurissent même en France:

Mais quel est l’avantage du  CISC pour durer autant de décades ?
Qui va gagner cette fois-ci entre SoC CISC et SoC RISC ?
À moins que ce ne soit le VLIW qui aura la peau du CISC ?
Vos avis dans les commentaires 😉


Les lingettes compressées

Impressionner ses invités avec les lingettes compressées :

  1. Déposer une pastille dans un ramequin
  2. Verser doucement de l’eau brûlante (bouilloire) sur la pastille
  3. La pastille absorbe l’eau et gonfle pour devenir un rince doigts tout chaud

Quelques liens pour comparer les prix et peut être se laisser tenter par un achat en ligne :


Perfectioner sa frappe au clavier

Je teste différentes méthodes pour perfectionner sa vitesse d’écriture au clavier.

Liste de logiciels libres : http://www.gnu.org/software/gtypist/gtypist.fr.html#autres

En cours de test :

  • TypeFast et Tipptrainer non trouvés dans la logithèque Ubuntu
  • gtypist détecte les fichiers de KTouch.
    Pour des leçons pour AZERTY faire gtypist ktfr.typ ou gtypist ktfr2.typ
  • TypeSpeed
  • KTouch
  • Tux Typing (TuxType), idéal pour les enfants
  • Nlkt (Non linear keyboard trainer)

Transférer des fichiers entre deux ordinateurs Linux

Le mail ? Impossible quand la taille est trop importante (des Go).

La commande scp ? Implique d’activer ssh, de créer sa paire de clés, d’ouvrir le firewall

La commande rsync ? Elle est bien cette commande, mais là aussi faut sortir l’artillerie !

Le partage NFS ? Bon là, ça se complique 😦

La commande netcat ? Oui 🙂

La machine destination écoute le port 4444
et détarre ce qu’elle reçoit
nc -l 4444 | tar x
La machine source tarre les fichiers
et les envoient sur le port 4444
de la machine destination (192.168.44.44)
tar c fichiers | nc 192.168.44.44 4444

On peut aussi réduire la bande passante en ajoutant à la commande tar l’option -z (gzip), ou l’option -j (bzip2) qui compresse mieux mais nécessite plus de ressources CPU.

    Sur les distributions récentes, je conseille les options :

  • --lzop –> Compression presque aussi bonne que gzip, mais nécessite moins de ressources CPU et mémoire 🙂
  • --xz –> Compression de folie (un peu plus que bzip2) mais consomme un max de ressources CPU et mémoire !

Donc choisir le bon niveau de compression selon le goulet d’étranglement : ressources CPU/Mémoire ou bande passante réseau.

Attention, plusieurs implémentations de netcat existent. J’utilise la version fournie par Ubuntu 12.04 qui est celle d’OpenBSD. La ligne de commande est quelquefois différente, exemple : -l -p 4444 au lieu de -l 4444


Diablox9 et ses 600 000 abonnés

La chaîne principale de Diablox9 a atteint 600 000 abonnés le 16 juillet 2012 !
–> la preuve en vidéo

Après 550 000 abonnés en juin, et bientôt 650 000 abonnés mi-août,
on peut estimer que 50 000 nouveaux internautes s’abonnent
chaque mois à sa chaîne principale : c’est tout simplement incroyable !


Optimiser son ordinateur avec un SSD

Le disque dur est bien souvent le goulet d’étranglement qui ralentit la machine. Petit à petit, il est remplacé par une nouvelle technologie : le SSD. C’est de la mémoire flash avec la même connectique que les disques durs. Donc, plus de pièces mécaniques en mouvement (pas de disque).

Comme toute nouvelle technologie, c’est plus cher. Dix fois plus cher !

SSD 80€ pour 128 Go
Disque dur 80€ pour 1.5 To

Mais les prix baissent. Maintenant, le SSD devient abordable.

De plus, le SSD est le choix le plus astucieux avec un ordinateur portable par rapport au disque dur :

  • 128 Go suffisent (merci d’archiver photos, vidéos et données personelles sur un NAS)
  • plus rapide
  • plus économe en énergie
  • plus silencieux
  • plus robuste (le disque dur et sa tête de lecture craignent les chocs)
  • tout aussi fiable (les SSD récents ne perdent pas plus de données qu’un disque dur magnétique)

J’ai donc acheté un ordinateur portable sans disque dur chez pcubuntoo.fr, et un SSD chez axtorage.com (le Samsung 830 128Go).

Voici mes conseils pour en obtenir les meilleures performances :

  • Choisir n’importe quel SSD récent supportant la technologie TRIM
    car ils sont tous bien plus véloces que les disques durs et, comparés aux disques durs, leurs performances se valent.

     
  • Les partitions crées avec l’installateur Ubuntu 12.04 sont bien alignées sur les tailles des blocs (block size)
    Pour s’en assurer, vérifier avec la commande fdisk -lu /dev/sda que les débuts soient bien des multiples de 2048. Si cela n’était pas le cas, redimensionner avec gparted.

     
  • Pas de swap : la RAM ne coûte pas chère et 8 Go c’est amplement suffisant
    Le swap reste nécessaire pour l’hibernation. Mais avec un SSD, la machine démarre en moins de 20 secondes. Alors l’hibernation ne se justifie plus. Si on souhaite quand même avoir un swap (par sécurité, pour l’hibernation…) il est possible d’indiquer de n’utiliser le swap que quand il ne reste plus que 0% de RAM libre en ajoutant la ligne vm.swappiness=0 à la fin du fichier /etc/sysctl.conf.

     
  • Utiliser le système de fichier ext4 avec les options atime,discard
    Attention quand même, l’option discard nécessite que le SSD supporte la technologie TRIM.

     
  • Mettre en RAM les arborescences /tmp et /var
    Sur Ubuntu 12.04, /var/run et /var/lock sont déjà mis en RAM, en parti par le script /etc/init/mounted-var.conf. Donc on peut ajouter à ce script des lignes du style run_migrate /var/log /run/log. Personnellement, j’ai préféré modifier le traditionnel /etc/fstaben ajoutant les lignes suivantes :

    tmpfs /tmp         tmpfs defaults,nosuid,noatime,size=10%,mode=1777       0 0
    tmpfs /var/tmp     tmpfs defaults,nosuid,noatime,size=10%,mode=1777       0 0
    tmpfs /var/log     tmpfs defaults,nosuid,noatime,size=10%,mode=0755,nodev 0 0 
    tmpfs /var/log/apt tmpfs defaults,nosuid,noatime,size=10%                 0 0
    

    Attention, apach n’apprécie que son répertoire /var/log/apache2 soit supprimé à chaque arrêt de la machine (utiliser nginx ou lighttpd à la place).
    Vérifier les point de montage avec la commande df :

    $ df -h
    Sys. fich.     Taille Util. Dispo Uti% Monté sur
    /dev/sda3         92G   76G   12G  87% /
    udev             3,9G  4,0K  3,9G   1% /dev
    tmpfs            789M  108K  789M   1% /tmp
    tmpfs            1,6G  880K  1,6G   1% /run
    none             5,0M     0  5,0M   0% /run/lock
    none             3,9G  212K  3,9G   1% /run/shm
    tmpfs            789M     0  789M   0% /var/tmp
    tmpfs            789M  692K  788M   1% /var/log
    tmpfs            789M   12K  789M   1% /var/log/apt
    

  • Utiliser l’ordonnanceur (scheduler) noop ou deadline
    Le scheduler par défaut, cfq, regroupe les opérations d’entrée/sortie pour optimiser les déplacements de la tête de lecture du disque dur. On peut changer le scheduler à la fin de l’init en ajoutant la ligne  echo noop > /sys/block/sda/queue/scheduler  au script /etc/rc.local.
    Mais je prefère que Linux utilise le bon scheduler dès son démarrage. Pour cela, dans le fichier /etc/default/grub, ajouter le paramètre elevator=noop à la ligne  GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"  (j’ai même supprimé le paramètre splash). Puis mettre à jour la configuration GRUB avec la commande update-grub.
    Au prochain démarrage, vérifier avec  cat /sys/block/sda/queue/scheduler.

     
  • Laisser Firefox gérer son cache
    Firefox gère très bien son cache et n’écrit dans des fichiers que ce qui est nécessaire. Si le cache est encore présent lors du prochain démarrage du PC, alors Firefox réutilisera son cache et sera plus rapide. De plus, Linux conserve en RAM les fichiers tant qu’il y a suffisament de mémoire (sauf quand Firefox force le flush du chache).

     
  • Mesurer la performance de son SSD avec  hdparm -t /dev/sda
    J’ai 477 MB/sec 😉

Sources :


Bien partitioner sa microSD pour Android

Android 4 (ICS) utilise maintenant le protocole MTP pour l’accès à la carte microSD. Et donc l’ordinateur ne requiert plus un accès direct au système de fichiers (USB mass storage). Ce qui permet de choisir un autre système de fichiers bien plus optimisé en latence, charge processeur, ressources mémoire et cycles d’écritures, et par conséquent une consommation électrique moindre 🙂

Le système de fichiers le plus prometteur est Btrfs. Mais celui-ci ne dépasse pas encore le niveau de rapidité et de robustesse de ext4. De plus, les lecteurs (pilotes) ext2/ext3 sont compatibles avec ext4 en lecture seule. Donc ici, nous allons nous concentrer sur ext4.

Afin de paramétrer au mieux notre système de fichiers, nous avons besoin de connaître différentes tailles en octets de la microSD : block d’effacement, page et segment. Comme le constructeur de la carte SD ne communique rarement ces informations nous avons deux choix :

1. Profiter de la veille technologique sur ce sujet :
https://wiki.linaro.org/WorkingGroups/Kernel/Projects/FlashCardSurvey?action=show&redirect=WorkingGroups%2FKernelConsolidation%2FProjects%2FFlashCardSurvey

2. Mesurer soit même ces paramètres :
https://doukki.net/doku.php?id=wiki:tutoriels:fastbench

Dans mon cas je n’étais pas sûr que ma microSD soit celle de la veille technologique. En effet, cet exemple se base sur la Transcend microSDHC TF 32Go class 10. 32€ chez Mongallet21 en juillet 2012. Au prix du méga-octet c’est moins onéreux qu’une 16Go et qu’une 64Go. De plus, mon GS3 ne supportant pas la norme UFS-1, une microSDXC 64Go UFS-1 ne devrait pas être plus véloce. Plus tard, j’ai appris que la class 4 est mieux adaptée aux accès aléatoires, ce qui est très important pour le système Android. Donc n’achetez pas la même.

J’ai donc opté pour le second choix : obtenir les caractéristiques de la carte SD en mesurant des temps de latence lors des accès à différentes parties de la carte.

L’utilitaire fastbench s’obtient en compilant son code source :

git clone git://git.linaro.org/people/arnd/flashbench.git
cd flashbench
make

Puis, insérer sa carte SD, ne pas la monter et lancer fastbench avec les privilèges root :

$ sudo ./flashbench -a /dev/sdg --blocksize=1024
align 8589934592  pre 848µs    on  998µs   post 962µs    diff 92.9µs
align 4294967296  pre 836µs    on  983µs   post 980µs    diff 75.2µs
align 2147483648  pre 872µs    on  997µs   post 979µs    diff 71.5µs
align 1073741824  pre 849µs    on  996µs   post 978µs    diff 82µs
align 536870912   pre 854µs    on  993µs   post 960µs    diff 86.4µs
align 268435456   pre 820µs    on  978µs   post 994µs    diff 71.3µs
align 134217728   pre 830µs    on  978µs   post 996µs    diff 65.4µs
align 67108864    pre 830µs    on 1.07ms   post 963µs    diff 171µs
align 33554432    pre 837µs    on  978µs   post 980µs    diff 69.8µs
align 16777216    pre 847µs    on 1.07ms   post 991µs    diff 149µs
align  8388608    pre 867µs    on 1.12ms   post 980µs    diff 198µs
align  4194304    pre 872µs    on 1.03ms   post 978µs    diff 107µs
align  2097152    pre 844µs    on 1.09ms   post 953µs    diff 191µs
align  1048576    pre 872µs    on 1.1ms    post 998µs    diff 167µs
align   524288    pre 848µs    on 1.1ms    post 973µs    diff 194µs
align   262144    pre 853µs    on 1.12ms   post 963µs    diff 211µs
align   131072    pre 889µs    on 1.07ms   post 956µs    diff 147µs
align    65536    pre 854µs    on 1.08ms   post 971µs    diff 164µs
align    32768    pre 852µs    on 1.1ms    post 942µs    diff 206µs
align    16384    pre 847µs    on 1.05ms   post 960µs    diff 146µs
align     8192    pre 890µs    on  889µs   post 889µs    diff -60ns
align     4096    pre 891µs    on  919µs   post 891µs    diff 28.1µs
align     2048    pre 975µs    on  973µs   post 962µs    diff 4.06µs

La dernière colonne (diff) permet de déduire la taille block d’effacement (erase block), dans mon cas je dirais plutôt 16Ko. Mais cette valeur n’est pas cohérente avec les différentes données que je trouve sur le net et les faibles valeurs diff des premières lignes me chagrinent.

En lisant le README fournit avec le code source, je comprends que ma carte SD est toute neuve et par conséquent les temps d’accès ne reflètent pas l’utilisation quotidienne. Je décide donc d’écrire sur la totalité de la carte. Un moyen simple est d’écrire un fichier de 32 Go sur la carte SD (plus simple que de réfléchir à une ligne de commande). Les plus gros fichiers sont la représentation brute des disques logiques. Pour déterminer la taille des disques je souhaite utiliser la commande df. Mais cette commande nécessite que les disques soient montés. Avec les distributions modernes, monter les disques se fait simplement via le gestionnaire de fichiers (comme PCManFS) en cliquant sur chaque disque logique (avant c’était encore plus simple avec une seule commande : sudo mount -a). EDIT : il y avait plus simple avec la commande lsblk.

$ df -Th
Sys. fich.     Type     Taille Util. Dispo Uti% Monté sur
/dev/sdb8      btrfs       11G  6,1G  2,2G  74% /
udev           devtmpfs   368M  4,0K  368M   1% /dev
tmpfs          tmpfs      150M  864K  149M   1% /run
none           tmpfs      5,0M     0  5,0M   0% /run/lock
none           tmpfs      375M   80K  375M   1% /run/shm
/dev/sdb1      ext2       7,0G  5,9G  775M  89% /boot
/dev/sde       vfat        11M   11M  304K  98% /media/disk
/dev/sdb3      ext2       7,6G  4,7G  2,5G  66% /media/elive
/dev/sdb5      ext3       9,7G  6,8G  2,5G  74% /media/mandriva
/dev/sdb6      ext2        31G   26G  3,3G  89% /media/backup
/dev/sdd1      vfat       7,9G  3,5G  4,4G  45% /media/LOUP
/dev/sdb7      reiserfs   9,4G  6,8G  2,7G  72% /media/debian
/dev/sda1      reiserfs    75G   70G  5,3G  93% /media/sata80
/dev/sdc5      ext3       2,7G  763M  2,0G  28% /media/home
$ sudo su
# cat /dev/sdb6 > /dev/sdg

Attention à ne pas se tromper de la destination, cela détruit irrémédiablement les données /dev/sdg et sans aucun message d'avertissement. Une erreur de glissement de doigt est vite arrivée...

Cela prend du temps à écrire 31Go... surtout sur un port USB1 !
J'ai regretté de ne pas avoir lancé la commande cat avec time, j'aurais bien aimé savoir combien de temps cela a pris !

On teste à nouveau la carte SD et nous avons maintenant de jolis métriques cohérents :)

# ./flashbench -a /dev/sdg --blocksize=1024
align 8589934592    pre  993µs   on 1.83ms   post 1.02ms   diff 823µs
align 4294967296    pre 1.03ms   on 1.82ms   post 1.01ms   diff 796µs
align 2147483648    pre 1.04ms   on 1.83ms   post 1.03ms   diff 802µs
align 1073741824    pre 1.02ms   on 1.83ms   post  988µs   diff 832µs
align  536870912    pre  999µs   on 1.82ms   post 1ms      diff 818µs
align  268435456    pre 1.03ms   on 1.82ms   post 1.02ms   diff 794µs
align  134217728    pre 1.02ms   on 1.84ms   post 1.03ms   diff 814µs
align   67108864    pre  993µs   on 1.89ms   post 1.03ms   diff 879µs
align   33554432    pre  987µs   on 1.8ms    post 1.02ms   diff 800µs
align   16777216    pre 1.01ms   on 1.84ms   post 1.01ms   diff 824µs
align    8388608    pre 1.01ms   on 1.85ms   post  995µs   diff 847µs
align    4194304    pre 1.03ms   on 1.79ms   post  997µs   diff 779µs
align    2097152    pre 1.02ms   on 1.85ms   post 1.03ms   diff 830µs
align    1048576    pre  990µs   on 1.87ms   post 1ms      diff 873µs
align     524288    pre  980µs   on 1.84ms   post  990µs   diff 851µs
align     262144    pre 1.04ms   on 1.87ms   post 1.03ms   diff 838µs
align     131072    pre  974µs   on 1.8ms    post  998µs   diff 813µs
align      65536    pre 1.03ms   on 1.85ms   post 1.02ms   diff 830µs
align      32768    pre  990µs   on 1.78ms   post  997µs   diff 789µs
align      16384    pre 1.01ms   on 1.07ms   post  994µs   diff 67.6µs
align       8192    pre 1.01ms   on 1.01ms   post  999µs   diff 904ns
align       4096    pre 1.01ms   on 1.01ms   post  980µs   diff 19.2µs
align       2048    pre 1.01ms   on 972µs    post 1.01ms   diff -41283n

D'après la dernière colonne (diff), nous avons un décrochage entre 32Ko, 16Ko et 8Ko. Mais ces valeurs donnent des indications sur la taille de la page, et non pas celle du segment qui est plutôt aux alentours de 4Mo.

Peut-être que notre carte mémoire n'est pas uniformément écrite... Une autre façon d'initialiser notre carte est d'utiliser la commande dd. Ci-dessous, nous réinitialisons à zéro notre carte en écrivant par blocs de 8Mo (10000 blocs). Les blocs de 8Mo permet à la carte SD d'optimiser l'effacement (réinitialisation) des segments avant

$ sudo su
# dd if=/dev/zero of=/dev/sdg bs=8M count=10000 &
# time dd if=/dev/zero of=/dev/sdg bs=8M count=10000&[1] 2982
# ps f
  PID TTY      STAT   TIME COMMAND
 2854 pts/2    S      0:00 sudo su
 2855 pts/2    S      0:00  \_ su
 2863 pts/2    S      5:43      \_ bash
 2982 pts/2    S      0:00          \_ bash
 2983 pts/2    D      0:00          |   \_ dd if=/dev/zero of=/dev/sdg bs=8M count=10000
 2985 pts/2    R+     0:00          \_ ps f
 1217 tty7     Ss+    5:52 /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novt
 1497 tty1     Ss+    0:00 /sbin/getty -8 38400 tty1
 1125 tty6     Ss+    0:00 /sbin/getty -8 38400 tty6
 1118 tty3     Ss+    0:00 /sbin/getty -8 38400 tty3
 1117 tty2     Ss+    0:00 /sbin/getty -8 38400 tty2
 1102 tty5     Ss+    0:00 /sbin/getty -8 38400 tty5
 1097 tty4     Ss+    0:00 /sbin/getty -8 38400 tty4

Le man dd indique que le signal USR1 donne l'état d'avancement :

# kill -USR1 2983
38+0 enregistrements lus
38+0 enregistrements écrits
318767104 octets (319 MB) copiés, 37,0688 s, 8,6 MB/s

Mettons en place un suivit :

# while true; do kill -USR1 2983; sleep 10; done
58+0 enregistrements lus
58+0 enregistrements écrits
486539264 octets (487 MB) copiés, 77,4884 s, 6,3 MB/s
62+0 enregistrements lus
62+0 enregistrements écrits
520093696 octets (520 MB) copiés, 86,7724 s, 6,0 MB/s
67+0 enregistrements lus
67+0 enregistrements écrits
562036736 octets (562 MB) copiés, 98,0405 s, 5,7 MB/s
[...]
92+0 enregistrements lus
92+0 enregistrements écrits
771751936 octets (772 MB) copiés, 155,028 s, 5,0 MB/s
97+0 enregistrements lus
97+0 enregistrements écrits
813694976 octets (814 MB) copiés, 166,393 s, 4,9 MB/s
102+0 enregistrements lus
102+0 enregistrements écrits
855638016 octets (856 MB) copiés, 176,588 s, 4,8 MB/s
106+0 enregistrements lus
106+0 enregistrements écrits
889192448 octets (889 MB) copiés, 185,497 s, 4,8 MB/s
[...]
123+0 enregistrements lus
123+0 enregistrements écrits
1031798784 octets (1,0 GB) copiés, 217,665 s, 4,7 MB/s
[...]
1886+0 enregistrements lus
1886+0 enregistrements écrits
15820914688 octets (16 GB) copiés, 3114,46 s, 5,1 MB/s
1892+0 enregistrements lus
1892+0 enregistrements écrits
15871246336 octets (16 GB) copiés, 3124,21 s, 5,1 MB/s
1898+0 enregistrements lus
1898+0 enregistrements écrits
15921577984 octets (16 GB) copiés, 3134,02 s, 5,1 MB/s
1904+0 enregistrements lus
1904+0 enregistrements écrits
15971909632 octets (16 GB) copiés, 3143,78 s, 5,1 MB/s
[...]
3141+0 enregistrements lus
3141+0 enregistrements écrits
26348617728 octets (26 GB) copiés, 5127,02 s, 5,1 MB/s
[...]
3674+0 enregistrements lus
3674+0 enregistrements écrits
30819745792 octets (31 GB) copiés, 5924 s, 5,2 MB/s
3680+0 enregistrements lus
3680+0 enregistrements écrits
30870077440 octets (31 GB) copiés, 5932,98 s, 5,2 MB/s
3687+0 enregistrements lus
3687+0 enregistrements écrits
30928797696 octets (31 GB) copiés, 5943,5 s, 5,2 MB/s
3694+0 enregistrements lus
3694+0 enregistrements écrits
30987517952 octets (31 GB) copiés, 5953,87 s, 5,2 MB/s
3701+0 enregistrements lus
3701+0 enregistrements écrits
31046238208 octets (31 GB) copiés, 5964,38 s, 5,2 MB/s
3707+0 enregistrements lus
3707+0 enregistrements écrits
31096569856 octets (31 GB) copiés, 5973,37 s, 5,2 MB/s
[...]
3723+0 enregistrements lus
3723+0 enregistrements écrits
31230787584 octets (31 GB) copiés, 5997,32 s, 5,2 MB/s
dd: écriture de «/dev/sdg»: Aucun espace disponible sur le périphérique
3743+0 enregistrements lus
3742+0 enregistrements écrits
31393316864 octets (31 GB) copiés, 6053,2 s, 5,2 MB/s
3743+0 enregistrements lus
3742+0 enregistrements écrits
31393316864 octets (31 GB) copiés, 6053,2 s, 5,2 MB/s

real	100m53.207s
user	0m0.148s
sys	2m21.745s

[1]+  Termine 1               time dd if=/dev/zero of=/dev/sdg bs=8M count=10000

Waou! 100 minutes pour écrire 32Go ! Mon matériel n'est pas non plus une foudre de guerre : le PC date de 2003 et un vieux cadre numérique fait office de lecteur de carte mémoire. D'ailleurs, j'y pense, ce cadre numérique ne supporte peut être pas les capacités de 32 Go...

On vérifie à nouveau avec flashbench :

# ./flashbench -a /dev/sdg --blocksize=1024
align 8589934592 pre 1.01ms	on 1.82ms	post 1.01ms	diff 803µs
align 4294967296 pre 1.01ms	on 1.83ms	post 1.02ms	diff 816µs
align 2147483648 pre 1.03ms	on 1.81ms	post 1.03ms	diff 785µs
align 1073741824 pre 1.01ms	on 1.83ms	post 1.03ms	diff 811µs
align  536870912 pre 1.03ms	on 1.83ms	post 1.05ms	diff 797µs
align  268435456 pre 1.03ms	on 1.81ms	post  995µs	diff 800µs
align  134217728 pre 1.01ms	on 1.82ms	post  994µs	diff 816µs
align   67108864 pre  997µs	on 1.81ms	post  995µs	diff 818µs
align   33554432 pre 1.02ms	on 1.8ms	post  979µs	diff 794µs
align   16777216 pre  974µs	on 1.82ms	post 1.02ms	diff 818µs
align   8388608  pre 1.01ms	on 1.82ms	post 1.03ms	diff 800µs
align   4194304  pre 1.02ms	on 1.79ms	post 1.03ms	diff 768µs
align   2097152  pre 1ms	on 1.8ms	post 1.01ms	diff 792µs
align   1048576  pre 1.01ms	on 1.81ms	post  996µs	diff 808µs
align    524288  pre 1.01ms	on 1.79ms	post  980µs	diff 798µs
align    262144  pre  973µs	on 1.8ms	post 1.01ms	diff 808µs
align    131072  pre 1.03ms	on 1.8ms	post  984µs	diff 793µs
align     65536  pre  987µs	on 1.83ms	post 1ms	diff 836µs
align     32768  pre 1.03ms	on 1.79ms	post  991µs	diff 784µs
align     16384  pre 1.02ms	on 1.07ms	post  993µs	diff 58µs
align      8192  pre 1.02ms	on 1.03ms	post 1.03ms	diff 5.6µs
align      4096  pre 1.02ms	on 992µs	post 1.02ms	diff -29250n
align      2048  pre 1.03ms	on 1.01ms	post 1.05ms	diff -27829n

Pas de surprises, c'est la même chose, et je n'ai pas le courage d'attendre 100 minutes pour écrire des 11111111.

A force de fouiller sur le net, je suis tombé des échanges sur une mailing-liste de Linaro : la carte SD concerné est très proche de la mienne 😉 (Google n'a même pas trouvé, j'ai du chercher à tâtons...)


Image

Boulangerie à Madrid

Les oiseaux picorent les graines de la croûte des pains en exposition devant la boulangerie.

image