La méthode du “Computational Storage” en génomique : utile ou pas ?

CATHERINE COSTE
Chroniques biomédicales
8 min readDec 1, 2018
Mon compte twitter, 2 décembre 2018

Why it matters: computational storage is a new way to mix algorithm with large sets of data, which could be used in computational genomics. Until now, fragments of data had to be brought to the algorithm, bits by bits, because of some critical bottleneck that is inherent in the storage process. Computational storage suppresses the bottleneck, allowing to bring the algorithm to the data.

Read English version here.

Pourquoi c’est important :

La nouvelle technologie de stockage informatique (computational storage) permet d’ajouter, de manière inédite, l’algorithme à d’importants volumes de données. Jusqu’à présent, on apportait les données à l’algorithme au fur et à mesure, à cause du goulot d’étrangement inhérent au stockage. La nouvelle méthode supprime ce goulot d’étranglement, permettant ainsi d’apporter l’algorithme aux données.

Article mis à jour le 26 février 2019

Cet article concerne le champ de la bio-informatique, qui est un champ de recherche multi-disciplinaire où travaillent de concert biologistes, médecins, informaticiens, mathématiciens, physiciens et bio-informaticiens, dans le but de résoudre un problème scientifique posé par la biologie. Le spécialiste qui travaille à mi-chemin entre ces sciences et l’informatique est appelé bio-informaticien ou bionaute. (Source : Wikipedia). Il s’agit donc dans ce qui suit de recherche fondamentale, faisant appel à la bio-informatique et au stockage de données.

Mon compte twitter, 2 mars 2019

Qu’est-ce qui gêne pour le séquençage intégral du génome aujourd’hui ? Problème de “wet lab.” ou de “dry lab.”, ou les deux ? Le “wet lab.” concerne les éprouvettes et autres accessoires en laboratoire de biologie, tandis que le “dry lab.” se réfère à toute la programmation informatique et à la numérisation du vivant, de la matière biologique. Aujourd’hui, on est capable de numériser le vivant, y compris la cellule humaine, mais on ne sait pas encore séquencer le génome humain et le lire d’un bout à l’autre. On est obligé de fragmenter les données …

La solution de stockage innovante proposé par NGD Systems permet d’avoir toutes les données en stockage ; et donc on peut chercher sur l’ensemble des données ; et non pas découper en fragments comme on faisait jusqu’à présent.

Si je résume avec une image : au lieu d’avoir une femme qui met 9 mois à faire un bébé, on a 9 femmes qui mettent un mois (Géraldine Van der Auwera, GATK, Broad Institute). Est-ce utile ? Si au lieu de courir 42 kms, vous pouviez remporter l’épreuve du marathon en ayant 42 coureurs parcourant chacun un km, est-ce que cela s’appellerait toujours un marathon ? Je suppose que non.

NGD Systems font des disques durs, très rapides, avec un Linux intégré pour qu’on y mette ses logiciels.

Les logiciels que l’on y met donnent accès à la totalité du disque dur — accès très rapide et instantané à la totalité du disque dur, sans le goulot d’étranglement que représente l’interface d’entrée-sortie du disque.

Au client d’installer le logiciel qui bénéficie de cela.

La contrainte, c’est que le processeur a une puissance limitée : c’est celui d’un gros smartphone.

Du coup, il faut des algorithmes de parallélisation qui tirent parti de cette nouvelle architecture : accès très rapide à de grandes quantités de données, mais puissance de calcul limitée (l’inverse de ce qu’on a d’habitude).

On a donc une solution qui cherche son problème … on ne sait pas si c’est utile ou non en génomique, à l’heure qu’il est. C’est donc une solution qui cherche son problème …

Mon compte twitter, 4 mars 2019

Maintenant voyons la chose un peu plus en détail :

https://www.ngdsystems.com/blasting-the-analysis-of-protein-sequencing

En résumé le “computational storage” ce sont des disques durs embarquant des processeurs pour décharger le CPU en faisant des calculs simples comme de l’indexation et d’autres plus compliqués. Un exemple d’usage en génomique : “BLASTing the analysis of protein sequencing

NGD Systems est une “startup” de “computational storage” : un ordinateur (type celui dans les smartphones) embarqué dans un disque dur, type SSD (solid state drives), donc le nouveau modèle de disque dur (pas celui avec le petit disque et la tête qui tournent dedans). La boîte en question a démarré avec plus de 100 brevets techniques il y a 2 ans et le gouvernement américain finance en partie. C’est une startup au sens où leur innovation marche, mais on sait pas bien encore à quoi l’employer ni comment. Leurs clients cherchent … (ils ont pas mal de gros clients, comme des plus petits aussi). Certains clients ont trouvé, d’autres cherchent encore. Ils ont une chaine You Tube avec des vidéos récentes. Leur site web : https://www.ngdsystems.com

Après avoir parlé avec eux cette semaine, voici le contexte et les questions (A et B) qu’ils se posent par rapport à la génomique. Je pense que c’est principalement une question pour les spécialistes de bioinformatics en fait, et une qui relève de la science-fiction tellement elle voit loin …

A) La question, en résumé : peut- on accélérer le séquençage génomique grâce au “computational storage” proposé par NGD systems ? C’est-à-dire : peut-on trouver des algorithmes nouveaux ou existants ou adaptés qui, alliés à du “computational storage”, vont séquencer plus rapidement ? Si on fait le boulot des bio-informaticiens et qu’on commence à y répondre, on va par exemple se demander si il y a des calculs pour lesquels on ne sait pas faire d’index (on se créé un index pour permettre d’accéder directement, ou le plus directement possible, à la donnée qu’on veut).

Patrick Merel (Portable Genomics ), 26 novembre 2018 : “Il faudra que j’y réfléchisse. Avec Edico Genome (startup rachetée cet été par le géant du séquençage génétique Illumina Inc. a San Diego CA) le genomic computing était dans le hardware, pourquoi le mettre sur le storage, à discuter.”

Contexte : Il reste un goulot d’étranglement avec le disque dur type SSD, à savoir : le fil entre le disque dur et l’ordinateur ; avec l’ancien type de disque dur il y avait deux goulots d’étranglement : le fil, plus la tête qui tourne dans le disque dur. Avec le disque dur type SSD, il y a donc un goulot d’étranglement entre la mémoire à court terme et celle à long terme. Cela oblige à des gymnastiques laborieuses et qui prennent du temps : tous les programmes copient les données qu’il leur faut pour effectuer une recherche ou des calculs du disque (mémoire à long terme) vers la mémoire (RAM / mémoire à court terme). Il faut donc copier, et faire les calculs/la recherche, puis recopier le ou les résultats vers la mémoire à long terme (voir 1 plus bas). RAM = random access memory, c’est une mémoire immédiate (vive), elle consomme beaucoup de courant, coute cher et s’efface quand on éteint l’ordinateur. Ne sert que pendant les calculs. Un génome ne tient pas dedans.
Dans l’ordinateur, il y a un processeur avec une très petite mémoire. On lui ajoute une mémoire vive qui est très rapide, très proche du processeur, le processeur peut accéder à cette mémoire n’importe quand n’importe où (c’est ce que signifie “random” : n’importe quand et n’importe où, et non “n’importe quoi” comme on pourrait l’imaginer). Il y a donc un goulot d’étranglement entre le calcul et les données à cause du tuyau entre le disque dur et l’ordinateur, entre le stockage et le calcul (disons comme cela pour simplifier les choses).
Fusionner processeur et stockage pour éviter tout goulot d’étranglement reviendrait trop cher, on sait pas faire aujourd’hui car les recherches coûteraient trop cher. A la place, on met un ordinateur qui existe déjà (celui des smartphones) dans le disque dur type SSD pour “pallier” à l’un des deux goulots d’étranglement (il en reste donc un). Aujourd’hui, pour pallier à ce goulot d’étranglement restant, les informaticiens se créent des index pour accéder directement à la donnée qu’ils veulent (l’index ne sert à rien d’autre qu’à pallier au goulot d’étranglement restant ou persistant).

1) Si l’ordinateur dans le disque dur permet de zapper la phase “copie”, donc si on s’affranchit de cette pénalité en mettant la partie computation dans le storage ou stockage, il reste sans doute à inventer ou recycler les algorithmes existants qui sont optimisés pour le cas où le stockage n’est pas computational (le cas le plus courant aujourd’hui bien sûr). Si on a ces algorithmes, ou si on les recycle ou invente, on aura de la capacité à traverser très vite les données dans tous les sens. Intéressant, en génomique, je suppose, mais à confirmer …

B) L’autre question à se poser est beaucoup plus prospective, plus science-fiction : Dans le séquençage et tout ce qui est test médical, le “wet lab” coute cher. C’est le “dry lab” qui ne coute pas cher. Et si on pouvait “distordre” le “wet lab”, tout en compensant avec les puissants outils du “dry lab”, afin de faire des économies ? Je m’explique : un “wet lab” mutualisé (plein de personnes réunies, mélangées, regroupées) flanquerait le bazar. On n’y retrouverait pas ses petits. Eh bien si, grâce à de puissants outils de tri du “dry lab” (informatique). Autrement dit, le “dry lab” vient compenser le bazar sciemment mis dans le “wet lab”, le tout pour faire des économies (sur le “wet lab”). Là le “computational storage” pourrait être utile ?
Je m’inspire d’un exemple pris dans le domaine de la photographie. Du temps où il y avait les négatifs, on devait avoir des objectifs fidèles, c’est-à-dire que l’assemblage de lentilles dans l’objectif devait reproduire une image fidèle sur le négatif. C’était une contrainte, d’avoir un objectif (fixé à l’appareil photo) fidèle.

Aujourd’hui, le négatif est remplacé par un capteur électronique. Si bien que les objectifs qu’on vend (pour les passionnés de photo, qui les achètent à part et les fixent à leur appareil photo) déforment l’image ! Remplacez l’objectif par le “wet lab” et vous voyez où je veux en venir. On accepte un “wet lab” imparfait car derrière (dans le cas de la photo) le “dry lab” ou l’ordinateur calculateur dans l’appareil photo compense cette imperfection pour la faire disparaître. On arrive ainsi à produire des objectifs moins chers et plus petits car on a tellement de puissance de “dry lab” qu’on peut se contenter d’un “wet lab” imparfait … On fait donc sciemment un “wet lab” imparfait pour réaliser des économies substantielles (les économies substantielles se réalisent sur le “wet lab”, pas sur le “dry lab”).

Cette technologie de “computational storage” est nouvelle. Il sera intéressant de suivre ses développements en bio-informatique, et surtout ses applications concrètes. Si des bio-informaticiens intéressés par la recherche fondamentale ont de bonnes idées à vendre, qu’ils n’hésitent pas à contacter NGD Systems (marketing).

twitter

--

--

CATHERINE COSTE
Chroniques biomédicales

MITx EdX 7.00x, 7.28.1x, 7.28.2x, 7.QBWx certified. Early adopter of scientific MOOCs & teacher. Editor of The French Tech Comedy.