Obligement - L'Amiga au maximum

Samedi 25 mars 2017 - 16:34  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Soutien

N'hésitez pas à soutenir le projet Obligement



Contact

David Brunet

Courriel

 


En pratique : accélérer un disque dur
(Article écrit par David Brunet - octobre 2007)


En matière de stockage de données, malgré l'émergence des mémoires flash, les bons vieux disques durs tiennent toujours le haut du pavé. Et il est bon d'essayer de les optimiser par tous les moyens. Voici donc quelques conseils utiles.

Brancher un disque dur IDE

Un contrôleur IDE est présent sur tous les Amiga Classic, Pegasos ou AmigaOne. Sur Amiga Classic, il n'y a qu'un canal IDE, ce qui permet de brancher deux périphériques. On monte à deux canaux sur les Pegasos/AmigaOne, ce qui fait donc quatre périphériques possibles. Si vous branchez votre disque dur sur un canal, il n'y aura bien entendu aucun problème. Là où cela se complique, c'est dans le cas où vous souhaitez brancher un second périphérique sur le même canal IDE que votre disque dur : si vous ne respectez pas les quelques règles de base, votre configuration IDE ne sera pas optimale.

Un canal IDE a une certaine bande passante, et brancher deux périphériques sur un seul canal fera que cette bande passante sera partagée par ces deux périphériques, surtout si ces périphériques travaillent en même temps.

Pour contrer cette faiblesse, on peut bien entendu brancher uniquement le disque dur, il sera seul et donc ne partagera pas la bande passante avec quelque chose d'autre.

Si vous avez plusieurs périphériques IDE. Il faut alors essayer de ruser :
  • Le périphérique qui est placé en maître gère le flux de données qui transite sur la nappe IDE (il est ainsi le mieux servi). Si vous avez un disque dur et un lecteur CD/DVD sur la même nappe, mettez donc le disque dur en position de maître.
  • Si vous avez plus de deux périphériques IDE, il est généralement recommandé de mettre les périphériques ayant des débits de même ordre sur une même nappe IDE. Regroupez donc vos disques durs sur une nappe IDE et vos lecteurs/graveurs sur une seconde.
Mode synchrone/asynchrone en SCSI

En SCSI, une chose qui peut augmenter les performances est le passage du mode asynchrone au mode synchrone. Mais dans ce cas, il faut que tous les périphériques sur la nappe gèrent le mode synchrone pour en profiter. En général, on double le débit théorique : de 3 à 5 Mo/s pour du SCSI-1, de 5 à 10 Mo/s pour le SCSI-2 et de 10 à 20 Mo/s pour le Wide SCSI-2. Ces normes SCSI synchrones portent le nom de "Fast" : Fast SCSI, Fast SCSI-2, Fast Wide SCSI-2.

Comment procède-t-on ? Sur MorphOS, tout comme pour le SCSI des cartes de Phase 5/DCE, la gestion de ces modes se fait via SCSIConfig (qui se trouve dans Sys:Tools/). Cliquez sur "Config Drive" et vous devriez trouver le bouton à cocher nommé "Synchron". Cochez-le pour passer en synchrone, cette information sera sauvegardée dans le RDB du disque et sera donc permanente (attention : toutes les données du disque seront effacées).

Une autre méthode, pour les cartes BlizzardPPC et CyberStormPPC, est de sélectionner le mode via le menu de démarrage (en appuyant sur "ESC" au démarrage de la machine). L'outil UnitControl permet également de régler ces modes mais il ne sauvegarde pas les réglages.

Sur les autres contrôleurs SCSI sur Amiga, cette option est généralement disponible avec l'outil vendu avec votre matériel. Sur les A3000, vous pourrez utiliser un programme comme SCSIPrefsMUI pour activer le mode synchrone.

SCSI A3000

Choix d'un système de fichiers performant

Après avoir installé physiquement son disque dur, le formatage est la première chose à faire. Pour formater un disque dur sur AmigaOS et assimilés, on a le choix entre plusieurs systèmes de fichiers plus ou moins performants.
  • OFS (Old File System) : il s'agit du premier système de fichiers sur AmigaOS. Son âge et ses défauts en font un produit obsolète. De plus, il est (était) surtout utilisé pour les disquettes et non les disques durs.
  • FFS (Fast File System) : le FFS est une grosse mise à jour de l'OFS. Il va plus vite que ce dernier mais reste relativement peu performant en matière de vitesse, surtout pour l'effacement de données, lors d'opérations simultanées ou pour se déplacer dans un fichier.
  • FFS2 (Fast File System 2) : FFS2 est la réimplémentation de FFS pour AmigaOS 4 et MorphOS. Il gère les noms longs (107 caractères) tout en étant un peu plus fiable. Malheureusement, rien de nouveau en matière de vitesse, FFS2 vise simplement à être compatible avec son prédécesseur.
  • AFS (Ami File Safe) : il fut le premier système de fichiers véritablement fiable sur Amiga. Il est relativement performant.
  • PFS3 (Professional File System 3) : PFS3 est commercial est très rapide. C'est le successeur d'AFS et c'est très certainement un des systèmes de fichiers à privilégier pour accélérer son disque dur. Bien qu'en code 680x0 uniquement, PFS3 est compatible avec MorphOS, mais pose apparemment des problèmes avec AmigaOS 4.
  • SFS (Smart File System) : SFS propose de bonnes performances de lecture, écriture et effacement. C'est une solution efficace dans de nombreuses situations.
  • SFS 2 (Smart File System 2) : il s'agit du petit frère de SFS, partageant de nombreuses caractéristiques. Il est plus rapide que son ainé mais ne peut amorcer une partition. Disponible uniquement sur AmigaOS 4.
  • JXFS : c'est un système de fichiers apparu avec AmigaOS 4.1. Il est plus rapide que SFS mais ne peut amorcer une partition.
  • FAT12/16/32 (File Allocation Table) : utilisable via le gestionnaire FAT95 ou avec CrossDOS, ce système de fichiers issu de DOS/Windows n'est pas très rapide en soi. Mieux vaut l'utiliser pour une partition destinée aux échanges (comme dans ce cas) que pour une partition d'utilisation générale.
  • EXT2/EXT3 (Extended File System) : issu du monde GNU/Linux, EXT2 et EXT3 sont très populaires. Les versions pour AmigaOS 68k et MorphOS sont malheureusement moins rapides que SFS ou PFS. Disponible sur Aminet.
  • BFFS (Berkeley Fast File System) : c'est un système de fichiers provenant de NetBSD. BFFS est disponible pour AmigaOS 3.x mais ses résultats ne montrent pas une vélocité excessive.
  • XFS (X File System) : un système de fichiers venant du monde Silicon Graphics. Disponible pour AmigaOS 3.x et MorphOS, il reste pour le moment en version bêta instable. De plus, il ne propose que la lecture des partitions (pas d'écriture).
  • NTFS (New Technology File System) : le système de fichiers de Windows NT/2000/XP/Vista est utilisable sur AmigaOS 3.x et MorphOS mais est également en version bêta : seule la lecture est gérée.
Donc, pour résumer cette partie sur les systèmes de fichiers, nous conseillons SFS ou PFS3, en matière de vitesse, pour AmigaOS 3.x et MorphOS, ou bien SFS2/JXFS pour AmigaOS 4.x. FFS/FFS2 restent corrects pour une utilisation générale, les autres sont soit obsolètes, soit encore instables.

Important : changer le système de fichiers d'une partition qui contient des données provoque la perte de ces dernières.

Place des partitions sur le disque dur

Les partitions en début de disque dur sont censées être un poil plus rapides que celles placées en fin de disque. Elles ont notamment un temps d'accès plus court. Attention tout de même : la différence de vitesse n'est pas flagrante mais cela est toujours utile à savoir.

Comment voir la place des partitions ? La création de partitions se fait via un outil de partitionnement comme HDToolBox (AmigaOS 68k), Media ToolBox (AmigaOS 4) ou SCSIConfig (MorphOS 1.x, mais aussi AmigaOS 68k avec disques durs SCSI gérés par une carte de Phase 5/DCE). Lors de la création de partitions, vous pouvez paramétrer sur quels cylindres s'étendent vos partitions, grâce aux valeurs à côté de "Start Cyl." et "End Cyl." (ou bien "Lower Cyl." et "Higher Cyl." dans Media ToolBox). Les partitions qui sont sur les premiers cylindres seront les plus véloces. Sur les deux graphiques suivants, les barres représentent la place des partitions sur un disque dur.

HDToolBox
Création de partitions avec HDToolBox

Media ToolBox
Création de partitions avec Media ToolBox

Taille des blocs

C'est une option que l'on oublie souvent, la taille des blocs est une donnée à maîtriser si on veut optimiser la vitesse de son système de fichiers. La plupart des systèmes de fichiers reconnaissent les valeurs suivantes : 512, 1024, 2048, 4096, 8192, 16 384 ou 32 768. Un bloc est l'espace minimal qu'un fichier occupe sur un disque. Si votre fichier fait 400 octets, il occupera 512 octets sur un disque avec des blocs de 512, et 32 768 octets sur un disque avec des blocs de 32 768.

FFS est lent avec des blocs de petite taille (512) car il ne possède pas de cache de disque. Le Boing Bag 1 d'AmigaOS 3.5 a d'ailleurs passé cette valeur à 1024 par défaut. Des blocs de 1024 à 4096 octets fournissent les meilleures performances pour FFS. Si votre partition ne contient que des gros fichiers (vidéos, ISO...), des grosses valeurs de blocs sont souhaitables. Cependant, les gains de vitesse des valeurs supérieures à 4096 (comme 8192, 16 384 ou 32 768) sont trop peu importants au regard de leur consommation d'espace disque.

Pour PFS3, la valeur par défaut, 1024 octets, semble donner de bons résultats partout.

Pour SFS, la valeur conseillée est 512 pour n'importe quel type de partition (que les fichiers soient petits ou gros). Des tailles de bloc plus importantes avec SFS ralentiront même certaines opérations.

Important : changer la taille des blocs sur une partition qui contient des données provoque la perte de ces dernières.

La modification de la taille des blocs se fait via un outil de partitionnement comme HDToolBox, Media ToolBox, ou SCSIConfig.

Dans SCSIConfig et Media ToolBox, sélectionnez la partition souhaitée et modifiez la valeur à côté de "Block Size". Cliquez ensuite sur "Ok" pour valider votre choix et quitter le programme afin de sauver la modification.

Pour HDToolBox, sélectionnez votre disque dur et cliquez sur "Partition Drive" (Partitionner le disque). Sélectionnez ensuite une partition et cliquez sur le bouton "Change" (changer). C'est ici que vous pourrez paramétrer la taille des blocs. Cliquez enfin sur "Ok" pour valider votre choix et quittez le programme afin de sauver la modification.

Vider le ".recycled" de SFS

Si vous utilisez SFS, vous avez la possibilité de créer, lors du formatage d'une partition, un répertoire "poubelle" également appelé ".recycled". Avec cette option, vous pouvez récupérer facilement un (des) fichier(s) effacé(s).

Mais il y a un "mais" : la présence de cette option ralentit quelque peu la partition SFS en question.

Par exemple, si vous supprimez un grand nombre de gros fichiers et que vous remplissez à nouveau la partition avec de nouveaux fichiers, l'opération de copie sera ralentie. Pourquoi ? Simplement parce que le système doit à la fois copier les nouveaux fichiers et aussi effacer les fichiers dans le ".recycled" et c'est un processus long à faire quand vous faites une copie ou un déplacement dans le même temps. Donc, lorsque votre répertoire ".recycled" d'une de vos partitions est rempli de gros fichiers, supprimez les.

Ne pas activer le ".recycled" de SFS

Une solution plus radicale concernant le répertoire ".recycled" de SFS est de ne pas l'activer lors du formatage de vos partitions. Ne cochez donc pas l'option ".recycled" (poubelle) qui se trouve dans la fenêtre de formatage SFS. Cela permet au système de ne pas copier les fichiers effacés dans ce répertoire durant des opérations comme la copie, le déplacement ou l'effacement de fichiers.

Sans ce ".recycled", vous n'aurez malheureusement plus la possibilité de retrouver un fichier effacé.

Important : évidemment, formater une partition non vierge provoque la perte des données contenues dans celle-ci.

Cache de répertoire pour FFS

Sur AmigaOS 68k avec FFS, activez l'option "directory caching" lors du formatage afin d'enclencher le cache pour les répertoires. Cela améliore la vitesse de lecture des répertoires en créant un cache du contenu de ces derniers.

Formater FFS

Sur MorphOS, cette option pour FFS est utilisée par défaut. On ne peut pas ne pas la mettre.

Avec FFS2 sur AmigaOS 4, on peut également activer le cache via la commande "run >nil: C:fs_plugin_cache mapartition: QUIET" (à mettre dans la user-startup).

Ajouter de la mémoire tampon (buffers)

Quel que soit le système de fichiers utilisé, il faut une certaine quantité de mémoire tampon pour que vos partitions ne soient pas essoufflées. Vous pouvez paramétrer le nombre de tampons de façon permanente ou bien en ajouter temporairement.

Le nombre de tampons se paramètre dans les outils de partitionnement comme HDToolBox, Media ToolBox ou SCSIConfig.

Pour HDToolBox, cliquez sur "Partition Drive". Une fenêtre comme ci-dessous s'affiche. Cochez "Advanced Options" afin de pouvoir modifier les tampons qui sont représentés par un nombre à côté de "buffers". Mettez y une valeur de 600 par exemple. Cliquez ensuite sur "Ok" pour valider votre choix, puis sur "Save Changes To Drive" pour sauver la modification.

HDToolBox

Pour SCSIConfig et Media ToolBox, sélectionnez la partition souhaitée et modifiez la valeur à côté de "buffers". Cliquez ensuite sur "Ok" pour valider votre choix et quitter le programme afin de sauver la modification.

SCSIConfig

Media ToolBox

600 tampons est suffisant pour les partitions SFS, PFS et FFS dans la majeure partie des situations. Il faut garder à l'esprit que plus vous en mettez, plus cela consomme de la mémoire. Notez bien qu'aucune donnée n'est effacée lorsque vous changez le nombre de tampons d'une partition.

Il se peut que vous ayez besoin de plus de tampons dans certaines situations. Une commande, nommée "addbuffers", définit le nombre de tampons alloués pour une partition donnée. Elle s'utilise via la Shell. Dans le cas suivant, nous avons augmenté de 400 tampons notre partition "Work:". Ce qui donne :

Addbuffers

Des valeurs de 10 000 ou plus sont totalement inutiles. On remarquera aussi que SFS et PFS sont moins accélérés par l'ajout de tampons que peut l'être FFS.

Paramètres du cache de SFS

La commande "setcache" (qui se trouve dans l'archive de SFS) est très utile pour accélérer ce système de fichiers. Avec cette commande, on peut gérer le cache et ainsi faire mieux que les valeurs par défaut. Les tampons mémoire utilisés par setcache n'ont rien à voir avec ceux que l'on crée via la commande "addbuffers".

L'augmentation à 64 tampons de 64 ko améliore assez nettement la vitesse d'une copie. C'est surtout vrai quand vous copiez un répertoire rempli de petits fichiers (la copie d'un gros fichier sera, elle, bien moins influencée par ces modifications de cache). Lors de nos essais, notre répertoire de test (48 Mo avec 2900 fichiers) a mis 38,5 secondes à se cloner sur une partition ayant 4 tampons de 1 ko. On passe à 31 secondes avec 32 tampons de 16 ko. Cela s'améliore avec 64 tampons de 32 ko (28,5 secondes) et encore plus avec 64 tampons de 64 ko (26 secondes). Il est possible de faire mieux mais les gains sont ensuite minimes. Attention tout de même, la consommation mémoire est assez conséquente. 64 tampons de 64 ko consomment 4 Mo de mémoire pour une seule partition ! (et comme il faudra aussi configurer le cache SFS pour les autres partitions, la consommation mémoire peut rapidement s'envoler).

Exemple, pour mettre 64 tampons de 64 ko, il faut entrer la ligne suivante dans un Shell :

SetCache

Notes : la valeur "readahead" doit être un exposant de 2 (4096, 8192, 16 384...). Les deux points ":" après le nom de la partition ne sont pas obligatoires.

D'une manière générale, il n'y a pas de valeur miracle dans la configuration du cache de SFS. Il faut que chaque utilisateur fasse ses propres essais puisque cela dépend de paramètres divers (vitesse du disque dur, vitesse du contrôleur SCSI ou IDE, mémoire, processeur, type d'applications...).

Une autre option est modifiable avec cette commande, c'est le mode. Ici, on a le choix entre activer le mode "copyback" ou non. Choisissez toujours "copyback" pour de meilleures performances. Ce réglage est d'ailleurs enclenché par défaut.

Pour les utilisateurs de MorphOS, ces procédures sont simplifiées puisque ce système dispose dans ses préférences d'un panel pour paramétrer SFS.

Cache SFS

Enfin, pour les utilisateurs d'AmigaOS 4, inutile de configurer ces options car le cache de SFS est géré par la diskcache.library du système lui-même. Il est plus rapide que le cache de SFS mais ne peut être configuré.

Module "SpeedyIDE" de Blizkick

BlizKick est un outil à l'origine destiné à copier n'importe quelle ROM pour les cartes accélératrices Blizzard et CyberStorm. Mais il ne s'arrête pas là puisque de multiples options lui permettent d'améliorer le système ou de corriger des bogues.

L'installation de BlizKick se fait uniquement sur les cartes Blizzard/CyberStorm ayant le cavalier "MapROM" et ayant de la mémoire Fast d'installée. Le cavalier MapROM doit être désactivé pour que BlizKick puisse procéder à la copie de la ROM. Après avoir téléchargé le programme et pris le temps de l'installer proprement, une ligne de ce genre devrait s'ajouter au tout début de votre startup-sequence :

c:BlizKick * EXTRESBUF=12288 LOCALFAST HOGWAITBLIT SPEEDROM MODULE noclick SpeedyIDE bppcfix ramlibstack quiet

Vous vous apercevrez qu'une option (module) nommée "SpeedyIDE" peut s'adjoindre à cette ligne. Elle permet, comme son nom le laisse suggérer, d'accélérer l'IDE. Les gains de vitesse sont de 20% environ selon l'auteur, Harry Sintonen. Ce type de correctif est d'ailleurs inclus dans les pilotes du produit commercial IDEFix97.

Logiciels de cache automatique

Des programmes spécialisés dans la gestion des caches existent. Ils permettent de créer et configurer des caches et leur taille. C'est un procédé qui ressemble un peu à la commande "setcache" de SFS.

Les programmes en question, tous pour AmigaOS 68k, sont :
  • HyperCache : créé par Silicon Prairie, il est toujours commercial bien qu'introuvable actuellement.
  • DynamiCache : conçu par Christopher Wolf, il est fourni avec la disquette "SCSI" qui accompagne les cartes accélératrices de Phase 5/DCE.
  • SmartDisk : fait par David Le Blanc et disponible sur Aminet.
  • Powercache : ce shareware est développé par Michael Berg et disponible sur Aminet.
  • FastCache : créé par Philip D'Ath et également disponible sur Aminet.
L'installation de ces différents logiciels est généralement fort simple. On copie le fichier principal quelque part et on le lance via une ligne de commande (à mettre dans la user-startup) ou en double-cliquant dessus. Les paramètres se limitent souvent au nombre de cache et à leur taille ainsi qu'au nom du périphérique logiciel à utiliser (scsi.device...). Inutile de préciser une quelconque partition car ils se focalisent uniquement sur le périphérique logiciel et ainsi toutes les partitions seront accélérées.

Côté performance, un vieux test de Per Salmi montre que HyperCache avait triplé la vitesse de son disque dur : de 1,6 à 4,7 Mo/s de taux de transfert. Laurent Camarasa, dans Amiga News n°79, disait qu'avec HyperCache, "on a l'impression que l'Amiga va plus vite". Mais ce type de programme qui gère le cache d'écriture a un point négatif : les données destinées à la copie sur le disque dur sont mises dans un cache en mémoire et elles seront discrètement écrites plus tard. Autrement dit, si un plantage intervient avant l'écriture, les données sont perdues !

Enfin, il y a le programme FDA (Future Drive Accelerator) qui est, sur le papier, encore plus efficace. Il faut néanmoins pas mal bidouiller avant que FDA fonctionne correctement, c'est un programme à réserver aux utilisateurs expérimentés. Le logiciel est shareware et il faut donc s'enregistrer auprès de son auteur, Martin Tauchmann, pour avoir la version débridée. Une démo est sur aminet.net/disk/cache/fda.lha.

Éviter la fragmentation

Une partition est fragmentée quand certains fichiers qu'elle contient sont éparpillés dans plusieurs blocs non contigus. Les opérations sur une partition fragmentée sont alors ralenties. Il faut donc la défragmenter à l'aide d'un utilitaire dédié à cette tâche. La fragmentation intervient, par exemple, quand vous copiez/effacez/déplacez des fichiers : plus vous faites ce genre d'opération, plus la partition risque de se fragmenter.

PFS3 et SFS ont, en théorie, tendance à limiter la fragmentation des partitions. En pratique, cela est moins évident, surtout pour SFS qui fragmente beaucoup quand il n'y a plus assez de place libre, ou lors de multiples écritures de fichiers simultanées. De son côté, FFS est massivement soumis au problème de fragmentation.

Les principaux outils pour régler ce problème sont :
  • ReOrg - pour OFS/FFS (AmigaOS 68k et compatibles).
  • DiskOptimizer - pour OFS/FFS (AmigaOS 68k et compatibles).
  • AFSOptimizer pour AFS (AmigaOS 68k et compatibles).
  • Defrag - pour SFS (inclus dans MorphOS). Un tutoriel est disponible ici.
  • SFSDefrag - pour SFS (AmigaOS 68k et compatibles).
  • PFSDefrag - pour PFS3 (AmigaOS 68k et compatibles). Un tutoriel est disponible ici.
La procédure de défragmentation/optimisation peut prendre un certain temps (quelques heures pour de grosses partitions avec un petit processeur). Elle n'efface pas les données qui sont stockées sur la partition. Mais il faut absolument ne pas interrompre la procédure sinon votre partition sera perdue.

Conclusion

Les éléments réunis précédemment sont utiles pour l'optimisation des disques durs. Mais pour avoir un disque vraiment rapide, le choix du contrôleur (ATA, SATA, SCSI-2, Ultra Wide SCSI...) et du disque dur lui-même (vitesse de rotation, mémoire cache...) sont primordiaux.

Note : remerciements à Lionel Muller et Jörg Strohmayer pour leurs apports d'information. Et à Mehdi Balouhia pour les captures d'écran de Media ToolBox.


[Retour en haut] / [Retour aux articles]