FR3121778A1 - Procédé d’optimisation d’écriture sur un disque dur - Google Patents
Procédé d’optimisation d’écriture sur un disque dur Download PDFInfo
- Publication number
- FR3121778A1 FR3121778A1 FR2103530A FR2103530A FR3121778A1 FR 3121778 A1 FR3121778 A1 FR 3121778A1 FR 2103530 A FR2103530 A FR 2103530A FR 2103530 A FR2103530 A FR 2103530A FR 3121778 A1 FR3121778 A1 FR 3121778A1
- Authority
- FR
- France
- Prior art keywords
- block
- writing
- disk
- data
- write
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 239000000872 buffer Substances 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 8
- 238000005457 optimization Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 claims description 2
- 230000008901 benefit Effects 0.000 description 5
- 230000004886 head movement Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/012—Recording on, or reproducing or erasing from, magnetic disks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1262—Formatting, e.g. arrangement of data block or words on the record carriers with more than one format/standard, e.g. conversion from CD-audio format to R-DAT format
Abstract
La présente invention concerne un procédé d’optimisation d’écriture sur un disque dur, caractérisé en ce que le procédé comprend un balayage du disque selon les étapes suivantes : - définition du nombre de blocs par disque, - définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque, - écriture de données sur le premier bloc du disque, - écriture de données sur un deuxième bloc du disque, le deuxième bloc correspondant au bloc supérieur au bloc central du disque, - écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, - écriture de données sur un quatrième bloc du disque, le quatrième bloc correspondant au dernier bloc du disque, réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque. Figure pour l’abrégé : Fig. 2
Description
La présente invention concerne un procédé d’optimisation d’écriture sur un disque dur. Un tel dispositif permet à un utilisateur d’améliorer le débit minimal de transfert de données sur un ou plusieurs disques durs.
Etat de la technique antérieure
On connaît de l’état de l’art des dispositifs et procédés d’écriture de données sur un disque dur.
Le document US 8134798B1 divulgue un lecteur de disque ayant une pluralité de surfaces de disque, dans lequel chaque surface de disque comprend une pluralité de pistes de données, et chaque piste de données comprend une pluralité de blocs de données. Lorsqu'une commande de lecture est reçue d'un hôte, les données sont lues à partir des premiers et seconds blocs de données sur des premières et secondes surfaces de disque, respectivement, en réponse à la commande de lecture, dans lequel le premier bloc de données stocke des données à un premier débit de données, et le un deuxième bloc de données stocke des données à un deuxième débit de données sensiblement inférieur au premier débit de données.
Les documents de l’art antérieur proposent de manière générale des logiques d’écriture dites séquentielles qui ne sont pas toujours optimales en matière de débit de transfert de données.
Lors de l’écriture en continu de façon séquentielle sur un disque dur, la vitesse d’écriture finit par être limitée par la vitesse d’écriture physique sur les disques. En effet, les disques ont un nombre de secteurs par piste qui est proportionnel au diamètre. Plus on parcourt le disque du diamètre extérieur vers le diamètre intérieur, moins il y a de secteurs par piste, et donc moins le débit en écriture sur le média est élevé.
Dans ce cas, le débit garanti de capture est limité au débit minimal en écriture sur le disque, c’est-à-dire, celui observé sur le diamètre intérieur du disque.
Par conséquent, le but de la présente invention est de résoudre au moins un des inconvénients susmentionnés en proposant une nouvelle logique de transfert de données sur un ou plusieurs disques durs. Un autre but de la présente invention est d’optimiser le débit minimal de transfert de données sur un ou plusieurs disques durs et donc d’optimiser l’écriture de données sur le ou les disques durs.
On atteint au moins un but de l’invention avec un procédé d’optimisation d’écriture sur un disque dur, le disque dur comprenant au moins un disque composé d’au moins une piste, l’au moins une piste étant composée d’une pluralité de blocs, la vitesse d’écriture sur le disque étant maximum sur le diamètre extérieur du disque et minimum sur le diamètre intérieur du disque, caractérisé en ce que le procédé comprend un balayage du disque selon les étapes suivantes :
- définition du nombre de blocs par disque, les blocs se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque,
- définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque en fonction du nombre de blocs définis par disque,
- écriture de données sur le premier bloc du disque, si le premier bloc du disque est plein, écriture dans le bloc supérieur au premier bloc,
- écriture de données sur un deuxième bloc du disque, le deuxième bloc correspondant au bloc supérieur au bloc central du disque, si le bloc supérieur au bloc central est plein, écriture sur le bloc suivant le bloc supérieur au bloc central,
- écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, si le bloc inférieur au deuxième bloc est plein, écriture dans le bloc inférieur suivant le bloc inférieur au deuxième bloc,
- écriture de données sur un quatrième bloc du disque, le quatrième bloc correspondant au dernier bloc du disque, si le dernier bloc du disque est plein, écriture sur le bloc inférieur au dernier bloc,
réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque.
Sans avoir besoin de connaître en détail l’architecture du ou des disques durs, l’invention permet de parcourir les disques ou plateaux du disque dur en alternant les accès des pistes à bon débit avec les accès des pistes à moins bon débit selon une logique de ré-ordonnancement en double spirale. La présente invention permet donc de fournir un débit minimal toujours très proche d’une moyenne qui est plus élevée que le débit minimal du disque ou des disques. Avantageusement, le procédé peut être utilisé dans le cadre d’une écriture en continue sur le ou les disques durs.
Le procédé peut être mis en œuvre par un système de traitement. Le système de traitement permet de mettre en œuvre le procédé de l’invention sur un ou des disques durs. Le système de traitement permet de piloter le ou les disques durs de l’extérieur du ou des disques durs. En cela, l’invention ne nécessite pas de connaitre précisément la structure interne du disque dur.
Le procédé peut être configuré et/ou programmé pour piloter l’écriture de données sur un ensemble de disques durs, les disques durs étant connectés en parallèle. L’écriture des données est répartie sur les différents disques durs tout en suivant la logique de ré-ordonnancement de l’invention. L’écriture de données sur les disques durs se trouve donc accélérée.
Avantageusement, les disques durs peuvent être connectés selon une configuration RAID 0, soit « Redundant Array of Inexpensive Disks ». Cette configuration permet de diminuer davantage les temps d'accès aux données selon l’invention.
Avantageusement, l’au moins un bloc peut avoir une taille définie en fonction de la taille d’au moins une mémoire tampon comprise dans le disque dur. Plus particulièrement, l’au moins un bloc peut avoir une taille de 64MB. Le procédé oblige les disques durs à effectuer des mouvements de tête supplémentaires pour sauter d’un bloc à l’autre. La taille suffisamment grande des blocs doit alors permettre que ces mouvements supplémentaires soient suffisamment espacés dans le temps pour que l’invention conserve son avantage. Le procédé tire avantage des mémoires tampons présentes dans les disques durs pour lisser les changements de débits d’écriture d’un bloc à l’autre. Avantageusement, les mémoires tampons des disques durs peuvent avoir une taille de 128 MB ou 256 MB. Les mémoires tampons stockent deux blocs pour obtenir un effet de lissage de débit suffisant. Pour ces disques durs, on choisit donc une taille de bloc de 64MB.
Au moins un saut de piste peut être effectué entre chaque bloc si le procédé est mis en œuvre sur un seul disque dur. Par exemple, si la taille de bloc est fixée à 64MB, au moins un saut de piste peut être effectué tous les 64MB si le procédé est mis en œuvre sur un seul disque dur. De plus, au moins un saut de piste peut être effectué tous les N fois 64MB si le procédé est mis en œuvre sur plusieurs disques durs.
Les sauts de pistes entre des pistes à bon débit, soit sur le diamètre extérieur du disque, et des pistes à moins bon débit, soit sur le diamètre intérieur du disque, sont réalisés de façon que les mémoires tampons du ou des disques durs absorbent et lissent les changements de débits d’écriture.
Avantageusement, une vitesse d’écriture moyenne minimale sur le disque est supérieure à la vitesse d’écriture minimum du disque. La logique de la présente invention permet d’aboutir à une moyenne plus stable et un minimum plus élevé comparée à une logique séquentielle.
Selon un deuxième aspect de l’invention, il est proposé un disque dur pour l’optimisation d’écriture sur ledit disque dur, le disque dur étant équipé d’une unité de traitement pour mettre en œuvre les étapes du procédé.
Selon un troisième aspect de l’invention, il est proposé un produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé.
Description des figures et modes de réalisation
D’autres avantages et particularités de l’invention apparaîtront à la lecture de la description détaillée de mises en œuvre et de modes de réalisation nullement limitatifs, et des dessins annexés suivants :
Ces modes de réalisation étant nullement limitatifs, on pourra notamment considérer des variantes de l’invention ne comprenant qu’une sélection de caractéristiques décrites ou illustrées par la suite isolées des autres caractéristiques décrites ou illustrées (même si cette sélection est isolée au sein d’une phrase comprenant ces autres caractéristiques), si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l’invention par rapport à l’état de la technique antérieure. Cette sélection comprend au moins une caractéristique de préférence fonctionnelle sans détails structurels, et/ou avec seulement une partie des détails structurels si cette partie uniquement est suffisante pour conférer un avantage technique ou à différencier l’invention par rapport à l’état de la technique antérieure.
On va tout d’abord décrire, en référence à la , un schéma général de disque dur selon l’invention.
De manière générale, un disque dur 10 permet le stockage de données. Un disque dur 10 comprend un support de mémorisation, une tête de lecture/écriture 4, au moins un moteur et une unité de traitement 6. Le support de mémorisation est composé d’au moins un disque ou plateau 1. La tête de lecture/écriture 4 est configurée pour lire et/ou écrire sur le support de mémorisation. Le moteur est configuré pour faire bouger la tête de lecture/écriture 4 ainsi que les plateaux 1. L’unité de traitement 6 est configurée pour gérer le déplacement de la tête de lecture/écriture 4 et commander le moteur.
Le disque dur 10 incorpore également une ou plusieurs mémoires tampons 5 permettant de mettre en attente les données en lecture ou en écriture. Les mémoires tampons 5 sont par exemple des mémoires tampons de taille 128MB ou 256MB.
Le plateau 1 tourne à une vitesse précise autour d’un axe central. Cette rotation permet à la tête de lecture de balayer la surface du plateau 1. Des bits sont regroupés sur des pistes 2 selon des cercles concentriques sur chaque plateau 1. La quantité de données qui peut être stockée sur une piste 2 de plateau 1 dépend de la longueur de la piste 2 qui elle-même dépend de son diamètre. Il en résulte que la vitesse d’écriture de la tête d’écriture 4 est maximale sur le diamètre extérieur qui est plus grand et minimale sur le diamètre intérieur qui est plus petit. La vitesse d’écriture de la tête d’écriture diminue au fur et à mesure que celle-ci approche le diamètre intérieur du plateau 1. L’ensemble des plateaux 1 du disque dur forme un cylindre. Les pistes 2 sont découpées en blocs 3.
On va décrire, en référence à la , la logique d’écriture du procédé d’optimisation d’écriture selon l’invention.
La présente deux courbes :
- Une courbe A de débit lors d’une écriture complète d’un ou plusieurs disques durs (ici 24 disques durs en parallèle) avant application de l’invention avec en abscisse la progression du début à la fin du disque et en ordonnée le débit,
- Une courbe B qui illustre la logique de ré-ordonnancement des écritures proposées selon l’invention.
La courbe A indique le débit en fonction de la progression du début à la fin des disques. Le débit est de 44 Gb/s au début et descend à 23 Gb/s à la fin du disque puis remonte brutalement à 44Gb/s. La remontée brutale de débit correspond au deuxième remplissage du disque.
Pour former la courbe B, les disques durs sont connectés à une interface correspondant à un système de traitement. Le système de traitement correspond à une unité centrale d’ordinateur par exemple. Le système de traitement envoie des instructions à l’unité de traitement 6 du disque dur qui les met en œuvre. Nous allons décrire la logique de ré-ordonnancement dans un premier temps, en considérant que l’interface est connectée à un seul disque dur.
Un balayage est réalisé selon une logique de ré-ordonnancement mise en œuvre par l’unité de traitement 6 selon les instructions envoyées par système de traitement.
Dans un premier temps, le procédé est configuré et/ou programmé par le système de traitement pour définir le nombre de blocs 3 par disque. Cette notion de bloc de données est indépendante des notions de secteurs, pistes et cylindres existant dans les disques durs. Le nombre de blocs est défini en divisant l’espace de stockage du disque dur en blocs de données consécutifs. Les mouvements de tête d’écriture 4 étant couteux en temps (3ms à 5ms sur les disques durs actuels), il convient de les minimiser. On choisit donc la plus grande taille de bloc possible pour les blocs 3. Dans cet exemple, les mémoires tampons sont égales à 128MB et la taille de bloc choisie est de 64MB. Ces tailles sont définies afin qu’un bloc à vitesse rapide et un bloc à vitesse lente soient entièrement stockés dans la mémoire tampon. On compte alors cinq cent blocs 3 dans le disque dur numérotés de 0 à 499. Le nombre de blocs n’est pas limité et est donné à titre d’exemple.
Les blocs 3 se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque. Le bloc numéro 0 se trouve sur le diamètre extérieur du disque tandis que le bloc numéro 499 se trouve sur le diamètre intérieur du disque.
A l’intérieur d’un bloc, l’écriture est séquentielle. La logique de ré-ordonnancement consiste à enchaîner l’écriture de blocs répartis de façon non séquentielle sur le disque 10.
Le procédé est configuré et/ou programmé par le système de traitement pour définir trois blocs principaux : un premier bloc 3, un bloc 3 central et un dernier bloc 3 en fonction du nombre de blocs 3 défini.
On entend par « premier bloc », le premier bloc dans l’espace d’adressage du disque dur. Il se trouve typiquement sur la piste se trouvant sur le diamètre extérieur du premier plateau 1. On entend par « dernier bloc », le dernier bloc dans l’espace d’adressage du disque dur. Il se trouve typiquement sur la piste se trouvant sur le diamètre intérieur du dernier plateau 1. On entend par « bloc central », le bloc 3 se trouvant à mi-chemin entre le premier et le dernier blocs 3. Le premier bloc 3 est donc le bloc numéro 0, le bloc 3 central est le bloc 3 numéro 249 et le dernier bloc 3 est le bloc 3 numéro 499.
La tête d’écriture 4 est configurée et/ou programmée par le système de traitement pour écrire des données sur le disque 10 selon un cycle d’écriture. Lors d’une première utilisation, les blocs 3 sont considérés comme « libre », c’est-à-dire non-écrit. Un cycle d’écriture correspond à quatre mouvements de tête d’écriture 4.
Pour le premier cycle d’écriture, la tête d’écriture 4 est programmée par le système de traitement pour écrire sur le premier bloc 3 précédemment défini, soit le bloc 3 numéro 0. Le débit d’écriture de la tête d’écriture 4 sur le premier bloc est maximal puisque celui-ci se trouve sur le diamètre extérieur du disque. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc, le deuxième bloc se trouvant sur une piste où le débit d’écriture de la tête d’écriture 4 est inférieur à la première écriture. La tête d’écriture 4 est ensuite programmée par le système de traitement pour écrire sur le deuxième bloc 3 correspondant au bloc supérieur au bloc central, soit le bloc numéro 250.
La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le troisième bloc est équivalent à la deuxième écriture, les deux blocs se trouvant sur une des pistes de la partie centrale du disque 10. La tête d’écriture est programmée par le système de traitement pour écrire sur le troisième bloc 3 correspondant au bloc inférieur au deuxième bloc 3, soit le bloc numéro 249.
La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un quatrième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le quatrième bloc est inférieur à la troisième écriture, le quatrième bloc se trouvant sur le diamètre intérieur du disque. Enfin, la tête d’écriture 4 est programmée par le système de traitement pour écrire sur le quatrième bloc 3 correspondant au dernier bloc 3 soit le bloc numéro 499.
Un premier cycle d’écriture selon l’invention est terminé. Cette logique forme alors un motif de double spirale sur le disque dur 10 comme représenté par la courbe B sur la . Par conséquent, au premier cycle d’écriture, les quatre premiers blocs écrits sont les blocs 0 [1], puis 250 [2], puis 499 [3], puis 249 [4], occasionnant les sauts de piste supplémentaires (1), (2), (3) et (4) selon la .
Au deuxième tour, le premier, deuxième, troisième et quatrième blocs 3 (numéro 0, 250, 249, 499) sont pleins. On entend par « plein », un bloc 3 sur lequel des données ont été écrites par la tête d’écriture 4.
Pour le deuxième cycle d’écriture, la tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un cinquième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le cinquième bloc est supérieur à la quatrième écriture, le cinquième bloc se trouvant sur le diamètre extérieur du disque 10. La tête d’écriture 4 est programmée par le système de traitement pour écrire sur le cinquième bloc 3 correspondant au bloc 3 directement supérieur au premier bloc 3 plein, soit le bloc 3 numéro 1 puis sur un sixième bloc 3 correspondant au bloc 3 directement supérieur au deuxième bloc 3, soit le bloc numéro 251.
La tête d’écriture 4 est ensuite programmée par le système de traitement pour écrire sur un septième bloc 3 correspondant au bloc 3 directement inférieur au troisième bloc, soit le bloc numéro 248 puis sur un huitième bloc 3 correspondant au bloc 3 directement inférieur au dernier bloc 3, soit le bloc numéro 498.
Au deuxième tour, les quatre blocs suivants sont pleins : les blocs 1 (après 0) [5], puis 251 (après 250) [6], puis 248 (avant 249) [7], puis 498 (avant 499) [8], occasionnant les sauts de piste supplémentaires (5), (6), (7) et (8) selon la .
Selon la même logique, au troisième tour, les quatre blocs pleins suivants sont les blocs 2, puis 252, puis 247, puis 497. Au cent vingt cinquième tour et dernier tour avant remplissage complet du disque, les quatre derniers blocs pleins sont les blocs 124, puis 374, puis 125, puis 375. Le cycle d’écriture est réitéré jusqu’à ce que les données soient écrites en intégralité sur le disque dur 10. Dans le cadre d’une écriture en continue des données, le procédé se répète indéfiniment. La tête d’écriture 4 écrit sur les blocs de manière infinie.
Le principe de blocs libres puis pleins décrit précédemment n’est utile que pour simplifier la description de la logique du ré-ordonnancement.
Les débits d’écriture de la tête d’écriture 4 changent selon la position de la tête d’écriture 4 et passent, pour chaque cycle d’écriture, d’un débit rapide à un débit moyen puis à un débit lent pour ensuite revenir à un débit rapide. Un déplacement de tête d’écriture 4 prend entre 3 et 5 ms. Les déplacements de tête d’écriture 4 sont programmés de manière à ce que les mémoires tampons du disque dur absorbent et lissent les changements de débits de la tête d’écriture 4. On aboutit alors à une variation de débit minimale pour un débit minimum maximisé comme présenté à la . La courbe de la représente une écriture en continue en utilisant le ré-ordonnancement décrit par l’invention sur le même système que la . Le débit moyen s’établit alors à 36 Gb/s et ne descend pas en dessous de 33 Gb/s, ce qui correspond à un gain de débit de plus de quarante pourcents.
On va maintenant décrire, en référence aux figures 2 et 3, un système d’utilisation du procédé d’optimisation d’écriture sur plusieurs disques durs selon l’invention.
En effet, le procédé est configuré et/ou programmé par le système de traitement pour être mis en œuvre sur un ensemble de disques durs 11 et 12 connectés en parallèle. Le système de traitement envoie des instructions aux unités de traitement des disques durs 11 et 12 qui les mettent en œuvre.
Les disques durs 11 et 12 sont connectés en parallèle. Le débit en écriture se trouve multiplié par le nombre de disques durs. Les disques durs 11 et 12 peuvent être connectés selon une configuration de type RAID 0, soit « Redundant Arrays of Inexpensive Disks » par exemple. Le nombre de disques durs connectés en parallèle n’est pas limité et est donné à titre d’exemple.
L’écriture sur les différents disques durs 11 et 12 suit la même logique d’écriture que celle décrite à la .
L’écriture des données est répartie sur les différents disques durs 11 et 12 en entrelaçant les écritures de blocs sur les différents disques, puis en suivant la logique de ré-ordonnancement de l’invention.
Prenons par exemple, le cas où des données de taille 500 MB sont envoyées par le système de traitement pour être écrites sur les disques durs 11 et 12. Ces données sont décomposées en huit blocs (A1 à A8) de 64 MB. Les huit blocs (A1 à A8) sont répartis sur les deux disques durs 11 et 12 de la façon suivante : les blocs A1, A3, A5, A7 sont écrits sur le disque dur 11 pendant que les blocs A2, A4, A6, A8 sont écrits sur le deuxième disque dur 12 simultanément.
Dans un premier temps, le procédé est configuré et/ou programmé par le système de traitement pour définir un premier bloc 3, un bloc 3 central et un dernier bloc 3 en fonction du nombre de blocs 3 définis pour chaque disque.
La tête d’écriture 4 de chaque disque dur 11 et 12 est configurée et/ou programmée par le système de traitement pour écrire les données envoyées par le système de traitement sur chaque disque dur 11 et 12 selon un cycle d’écriture.
Pour le disque dur 11, la tête d’écriture 4 est programmée par le système de traitement pour écrire le bloc A1 sur le premier bloc 3, soit le bloc numéro 0, la tête d’écriture ayant un débit d’écriture maximum. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc 3 et écrire le bloc A3 sur le deuxième bloc 3 correspondant au bloc 3 supérieur au bloc 3 central. Le bloc A3 est écrit sur le bloc numéro 250, la tête d’écriture ayant un débit d’écriture inférieur à la première écriture sur le deuxième bloc. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3 et écrire le bloc A5 sur le troisième bloc 3 correspondant au bloc 3 inférieur au deuxième bloc 3. Le bloc A5 est écrit sur le bloc numéro 249, la tête d’écriture 4 ayant un débit d’écriture équivalent à la deuxième écriture sur le troisième bloc. Enfin, la tête d’écriture 4 est également programmée par le système de traitement pour se déplacer sur un quatrième secteur 3 et écrire le bloc A7 sur le quatrième bloc 3 correspondant au dernier bloc 3. Le bloc A7 est donc écrit sur le bloc numéro 499, la tête d’écriture ayant un débit d’écriture inférieur à la troisième écriture sur le quatrième bloc.
En simultané du premier disque dur 11, pour le deuxième disque dur 12, la tête d’écriture 4 est programmée par le système de traitement pour écrire le bloc A2 sur le premier bloc 3 soit le bloc numéro 0, la tête d’écriture 4 ayant un débit d’écriture maximum. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc 3 et écrire le bloc A4 sur le deuxième bloc 3 correspondant au bloc 3 supérieur au bloc 3 central. Le bloc A4 est écrit sur le bloc numéro 250, la tête d’écriture 4 ayant un débit d’écriture inférieur à la première écriture sur le deuxième bloc. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3 et écrire le bloc A6 sur le troisième bloc 3 correspondant au bloc 3 inférieur au deuxième bloc 3. Le bloc A6 est écrit sur le bloc numéro 249, la tête d’écriture 4 ayant un débit d’écriture équivalent à la deuxième écriture sur le troisième bloc. Enfin, la tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un quatrième secteur 3 et écrire le bloc A8 sur le quatrième bloc 3 correspondant au dernier bloc 3. Le bloc A8 est écrit sur le bloc numéro 499, la tête d’écriture 4 ayant un débit d’écriture inférieur à la troisième écriture sur le quatrième secteur. Un mouvement de tête d’écriture 4 pour changer de bloc est donc effectué tous les N blocs si le procédé est mis en œuvre sur N disques durs.
L’écriture des données est donc répartie sur les deux disques 11 et 12. Les deux écritures sur les deux disques durs 11 et 12 sont simultanées. Dans le cas d’une configuration en parallèle, l’écriture des données est davantage optimisée puisque chaque disque ne doit lire et écrire que la moitié des données en suivant l’optimisation d’écriture du procédé selon l’invention.
Typiquement au moins un des moyens du dispositif selon l’invention précédemment décrits, de préférence chacun des moyens du dispositif selon l’invention précédemment décrit sont des moyens techniques.
Typiquement, chacun des moyens du dispositif selon l’invention précédemment décrits peuvent comprendre au moins un ordinateur, une unité centrale ou de calcul, un circuit électronique analogique (de préférence dédié), un circuit électronique numérique (de préférence dédié), et/ou un microprocesseur (de préférence dédié), et/ou des moyens logiciels.
Bien sûr, l’invention n’est pas limitée aux exemples qui viennent d’être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l’invention.
Bien entendu, les différentes caractéristiques, formes, variantes et modes de réalisation de l’invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. En particulier toutes les variantes et modes de réalisation décrits précédemment sont combinables entre eux.
Claims (8)
- Procédé d’optimisation d’écriture sur un disque dur (10), le disque dur (10) comprenant au moins un disque (1) composé d’au moins une piste (2), l’au moins une piste (2) étant composée d’une pluralité de bloc, la vitesse d’écriture sur le disque (1) étant maximum sur le diamètre extérieur du disque (1) et minimum sur le diamètre intérieur du disque (1), caractérisé en ce que le procédé comprend un balayage du disque (1) selon les étapes suivantes :
- définition du nombre de blocs par disque (1), les blocs se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque (1),
- définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque (1) en fonction du nombre de blocs définis par disque (1),
- écriture de données sur le premier bloc du disque (1), si le premier bloc du disque (1) est plein, écriture dans le bloc supérieur au premier bloc,
- écriture de données sur un deuxième bloc du disque (1), le deuxième bloc correspondant au bloc supérieur au bloc central du disque (1), si le bloc supérieur au bloc central est plein, écriture sur le bloc suivant le bloc supérieur au bloc central,
- écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, si le bloc inférieur au deuxième bloc est plein, écriture dans le bloc inférieur suivant le bloc inférieur au deuxième bloc,
- écriture de données sur un quatrième bloc du disque (1), le quatrième bloc correspondant au dernier bloc du disque (1), si le dernier bloc du disque (1) est plein, écriture sur le bloc inférieur au dernier bloc,
réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque (1). - Procédé d’optimisation d’écriture sur un disque dur selon la revendication 1, caractérisé en ce que le procédé est mis en œuvre par un système de traitement.
- Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce que le procédé est configuré et/ou programmé pour piloter l’écriture de données sur un ensemble de disques durs (11 et 12), les disques durs (11 et 12) étant connectés en parallèle.
- Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce que l’au moins un bloc a une taille définie en fonction de la taille d’au moins une mémoire tampon comprise dans le disque dur (10).
- Procédé d’optimisation d’écriture selon l’une quelconque des revendications précédentes, caractérisé en ce qu’au moins un saut de piste est effectué entre chaque bloc si le procédé est mis en œuvre sur un seul disque dur (10).
- Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce qu’une vitesse d’écriture moyenne minimale sur le disque (1) est supérieure à la vitesse minimum d’écriture du disque (1).
- Disque dur pour l’optimisation d’écriture sur ledit disque dur, le disque dur (10) étant équipé d’une unité de traitement pour mettre en œuvre les étapes du procédé selon les revendications 1 à 6.
- Produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé selon l’une quelconque des revendications 1 à 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2103530A FR3121778B1 (fr) | 2021-04-07 | 2021-04-07 | Procédé d’optimisation d’écriture sur un disque dur |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2103530A FR3121778B1 (fr) | 2021-04-07 | 2021-04-07 | Procédé d’optimisation d’écriture sur un disque dur |
FR2103530 | 2021-04-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3121778A1 true FR3121778A1 (fr) | 2022-10-14 |
FR3121778B1 FR3121778B1 (fr) | 2024-04-19 |
Family
ID=77226851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2103530A Active FR3121778B1 (fr) | 2021-04-07 | 2021-04-07 | Procédé d’optimisation d’écriture sur un disque dur |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3121778B1 (fr) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0643388A1 (fr) * | 1993-09-10 | 1995-03-15 | Matsushita Electric Industrial Co., Ltd. | Disque optique, et appareil d'enregistrement et de reproduction optique |
US6084831A (en) * | 1996-12-16 | 2000-07-04 | Sony Corporation | Apparatus and method of averaging disk transfer rate including division of disks into disks accessible in a radially inward direction and disks accessible in a radially outward direction |
WO2001001680A1 (fr) * | 1999-06-24 | 2001-01-04 | Sony Electronics, Inc. | Technologie de memoire de masse |
US20090327598A1 (en) * | 2008-06-25 | 2009-12-31 | Sony Corporation | Disk storage apparatus and program |
US8134798B1 (en) | 2005-11-23 | 2012-03-13 | Western Digital Technologies, Inc. | Disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces |
EP2759923A2 (fr) * | 2013-01-29 | 2014-07-30 | Konica Minolta, Inc. | Dispositif de commande d'écriture et appareil de formation d'image |
-
2021
- 2021-04-07 FR FR2103530A patent/FR3121778B1/fr active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0643388A1 (fr) * | 1993-09-10 | 1995-03-15 | Matsushita Electric Industrial Co., Ltd. | Disque optique, et appareil d'enregistrement et de reproduction optique |
US6084831A (en) * | 1996-12-16 | 2000-07-04 | Sony Corporation | Apparatus and method of averaging disk transfer rate including division of disks into disks accessible in a radially inward direction and disks accessible in a radially outward direction |
WO2001001680A1 (fr) * | 1999-06-24 | 2001-01-04 | Sony Electronics, Inc. | Technologie de memoire de masse |
US8134798B1 (en) | 2005-11-23 | 2012-03-13 | Western Digital Technologies, Inc. | Disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces |
US20090327598A1 (en) * | 2008-06-25 | 2009-12-31 | Sony Corporation | Disk storage apparatus and program |
EP2759923A2 (fr) * | 2013-01-29 | 2014-07-30 | Konica Minolta, Inc. | Dispositif de commande d'écriture et appareil de formation d'image |
Also Published As
Publication number | Publication date |
---|---|
FR3121778B1 (fr) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6499083B1 (en) | Disk-based storage system responsive to a direction-selection signal for autonomously controlling seeks in a sequence determined by the direction-selection signal and a locally-stored doubly linked list | |
US9921774B2 (en) | Data storage management in a memory device | |
EP0227530B1 (fr) | Procédé d'écriture avec mise à jour et de lecture d'informations sur un support non effaçable organisé en secteurs | |
JP2006024211A5 (fr) | ||
CN107526689B (zh) | 读高速缓存管理 | |
FR2687811A1 (fr) | Procede et appareil de commande de memoire flash. | |
JP2012533112A (ja) | 階層不揮発性ストレージのためのシステムおよび方法 | |
US20200285391A1 (en) | Retention-aware data tiering algorithm for hybrid storage arrays | |
EP0133706A2 (fr) | Procédé et système pour enregistrer et retrouver des données échantillonnées dans des canaux multiples | |
JP2003507830A (ja) | 光データ記憶 | |
US20030149838A1 (en) | Data transfer performance through resource allocation | |
FR3055715A1 (fr) | Methodes et dispositifs pour contourner le cache interne d'un controleur memoire dram evolue | |
US9875030B2 (en) | Media write operation | |
JP4589335B2 (ja) | 可変ビットレートメディアストリーム再生時のバッファ再充填時間の決定 | |
US6134586A (en) | Striping data across disk zones | |
US6883062B2 (en) | High-speed disk drive system | |
FR2617627A1 (fr) | Disquette d'enregistrement possedant une zone d'enregis trement qui peut etre seulement lue et une zone d'enregistrement sur laquelle il peut etre ecrit, et appareil de commande de celle-ci | |
FR3121778A1 (fr) | Procédé d’optimisation d’écriture sur un disque dur | |
FR2468163A1 (fr) | Dispositif et procede de memorisation virtuelle | |
JP3637346B1 (ja) | 情報記録装置と情報記録方法とプログラム | |
US20180088833A1 (en) | Hybrid data storage device with performance mode data path | |
EP0952587B1 (fr) | DRAM à structure rapide | |
FR2801388A1 (fr) | Procede de commande de memoire dram rapide et controleur adapte | |
JP2009237902A (ja) | 記録装置及びその制御方法 | |
FR3084496A1 (fr) | Procede et dispositif de generation d'instructions destinees a un dispositif pour realiser une mise a jour sur place d'un fichier de donnees |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20221014 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
CD | Change of name or company name |
Owner name: EXTREME NETWORKS FRANCE, FR Effective date: 20240314 |