Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:"...

12
So#ware/Science CoDevelopment: So%ware Engineering for LargeScale in Silico Neuroscience Research Prof. Felix Schürmann, Nenad Buncic, Dr. Fabien Delalondre, Stefan Eilemann, Jeffrey Muller felix.schuermann@epfl.ch EPFL/Blue Brain Project 1

Transcript of Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:"...

Page 1: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

So#ware/Science  Co-­‐Development:    So%ware  Engineering  for  Large-­‐Scale  in  Silico  Neuroscience  Research    

Prof.  Felix  Schürmann,  Nenad  Buncic,  Dr.  Fabien  Delalondre,  Stefan  Eilemann,  Jeffrey  Muller  [email protected]    

EPFL/Blue  Brain  Project   1  

Page 2: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Some  Numbers  on  the  Brain  

•  Rat  brain*  ~200M  (2x108)  nerve  cells  

~130M  glial  cells  

~O(1012)  synapses    

*  Herculano-­‐Houzel  et  al.  2006;  **Herculano-­‐Houzel  2009;  ***  Sims  et  al.  2007  

•  Each  cell  –  a  universe***  ~O(10B)  proteins/nerve  cell  

•  Human  brain**  

~90B  (1011)  nerve  cells  ~90B  glial  cells  ~O(1015)  synapses  

Page 3: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

QualitaIve  Simulator  Landscape*  

3/3/14   EPFL/Blue  Brain  Project   3  *  incomplete  

Reac[on-­‐Diffusion  

Molecular  Dynamics  

Mean  Field/Maps/Baysian  

Neuron-­‐based  

NEST,  BRIAN,  CSIM,  MVASpike,  C2,  …    

NEURON,  MOOSE,  GENESIS,  NCS,  SPLIT,  …  

STEPS,  MCELL,  VCELL,  NEURORD,  CDS,  …  

LAMMPS,  NAMD,  AMBER,  GROMACS,  ESPRESSO,  …  

Gaussian,  CPMD,  CP2K,  …  

Topographica,  MIIND,  …  

Page 4: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

NEURON  

•  Efficient,  domain-­‐specific  simulator  for  mul[-­‐compartment,  conductance-­‐based  simula[ons  of  neurons  and  networks  –  Efficient  (Hines’  algorithm)  –  Scriptable  (python,  hoc)  –  Extensible  (NMODL)  –  Interac[ve  (GUI)  

•  Goes  back  more  than  25  years  •  Open  source  •  Ac[ve  community  •  Authored  and  ac[vely  supported  by  Michael  

Hines  •  De-­‐facto  standard  

–  More  than  25  technical  publica[ons  on  NEURON  –  More  than  1000  scien[fic  publica[ons  

men[oning  NEURON  

3/3/14   Blue  Brain  Project   4  

Page 5: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

The  Blue  Brain  Project  

•  pioneers  a  novel  strategy  to  integrate  fragmented  biological  knowledge  into  unifying  models  of  brain  1ssue  

•  develops  a  unique  supercomputer-­‐based  pla7orm  for  crea[ng,  simula[ng  and  evalua[ng  unifying  brain  models    

•  use  the  plamorm  for  simula[on-­‐based  research  and  tested  on  a  rat’s  neocor1cal  microcircuit  

•  Coordinator  of  the  European  Flagship  Project:  Human  Brain  Project  hnp://humanbrainproject.eu  

•  Funded  by  public  sources  •  Directed  by  Prof.  Henry  Markram  

  EPFL/Blue  Brain  Project   5  

Page 6: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Modeling  

Virtual  Experiments  Data  Model  

Analy[cs   Visualiza[on  

Simula[on  

Neuroscience  

NeuroinformaIcs  

Microcircuit  Ultrastructure   Cell   Experiment  Mesocircuit   Macrocircuit  

Transcriptome  

Organism  Level  Data  

Cellular  Level  Data   Predic[ve  Reverse  

Engineering  

Parametric  Geometry  

Electro-­‐dynamics  

Connec[vity  Rules   Plas[city   Macroscopic  

Effects  Physical  Chemistry  

Subcellular  Level  Data  

Tissue  Level  Data  

MathemaIc  AbstracIon  

Metabolome   Channelome   Connectome  Genome   Physiome   Phenome  Proteome   Receptome  

SimulaIon  

3/3/14   EPFL/Blue  Brain  Project   6  

Simula[on  

..it’s  really  not  just  a  simulaIon…  

Page 7: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Goals  for  Development  

•  Innova[on  – Allow  rapid  prototyping  – Mul[-­‐language  support  

•  Sustainability  – Test  coverage,  documenta[on,  standardiza[on,  backward  compa[bility,  etc.  

– Needs:  •  Infrastructure  (standardiza[on  &  automa[on)  •  Processes  (SW  lifecycle,  development  method,  release  strategy,  …)  •  Guidelines  (coding  standards,  packaging,  etc.)  

EPFL/Blue  Brain  Project   7  

Page 8: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

InnovaIon  &  Sustainability  

•  Worlds  apart:  Sandia  TriBITS  SW  Lifecycle  Model  

EPFL/Blue  Brain  Project   8  

Exploratory  

Research  Stable   Produc[on  Growth     Produc[on  Maintenance  

*  

*  (Lean/Agile)   (Lean/Agile)   (Lean/Agile)  

prototype  

Works!   Adopted  in  produc[on…  

•  Neeeeeever  seen  this:  

Page 9: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Legacy  &  Non  SW  Experts  

EPFL/Blue  Brain  Project   9  

-­‐  Mandatory  for  prototypes  with  >1  user  or  >1  developer  

-­‐  Time  limited  (12  month)  –  up  or  out  -­‐  Migra[on  path  for  exis[ng  code  -­‐  Metrics  &  requirements  adoptable  

by  scien[sts  

Exploratory  

Research  Stable   *  (Lean/Agile)  

Legacy  Codes  Non  SW  Expert  

SW  Expert  Research  Development  *  

<<refactor>>  

<<stabilize>>  

<<reimplement>>  

Non  SW  Expert  

*  

Page 10: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Some  Features  of  RD  Class  

•  Git  repository  •  CMake  based  on  standard  CMake  config  

•  Adhere  to  coding  guidelines  •  40%  test  coverage  •  Doxygen  •  Jira  channel  for  bug  tracking  •  Con[nuous  integra[on  •  Ready  for  Gerrit  code  review  •  Periodic  code  reviews  

EPFL/Blue  Brain  Project   10  

Page 11: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Need  to  make  it  suggesIve!  

•  Pay  coffee  once  in  a  while….    •  Provide  templates  for  novel  projects  –  hnps://github.com/BlueBrain/Hello  

•  Automate:  – U[lize  power  of  CMake    

•  Tes[ng  •  Documenta[on  •  Dependencies    check  out  buildyard  for  mul[-­‐dependency  builds:  hnps://github.com/Eyescale/Buildyard.git  

–  Provide  stable  and  automated  infrastructure/services  •  CI  services  •  Puppe[za[on  of  infrastructure  configura[on  •  API  to  program  infrastructure  (PaaS)  

EPFL/Blue  Brain  Project   11  

Page 12: Soware/ScienceCoDevelopment : So ......Soware/ScienceCoDevelopment:" So%ware"Engineering"for"Large0Scale"in"Silico" Neuroscience"Research"" Prof.FelixSchürmann,Nenad, Buncic,Dr.Fabien

Acknowledgements  

•  Nenad  Buncic  –  Sec[on  Manager    Core  Services  

•  Dr.  Fabien  Delalondre  –  Sec[on  Manager    High  Performance  Compu[ng  

•  Stefan  Eilemann  –  Sec[on  Manager    Visualiza[on  

•  Jeffrey  Muller  –  Sec[on  Manager    Plamorm  Development  

Contacts:  Prof.  Felix  Schürmann  Blue  Brain  Project  Co-­‐Director,  Head  of  Compu[ng  Division  Email:  [email protected]    

EPFL/Blue  Brain  Project   12  

hnp://bluebrain.epfl.ch  hnp://humanbrainproject.eu