Difference between revisions of "Improving the new user experience"

From Einstein Toolkit Documentation
Jump to: navigation, search
(Obstacles faced by new users)
Line 8: Line 8:
  
 
== Brainstorming ==
 
== Brainstorming ==
 +
 +
(Roughly in order of how likely we are to work on it at the workshop)
  
 
=== Obstacles faced by new users ===
 
=== Obstacles faced by new users ===
  
 +
* Configuring the ET on a new machine is very difficult (even just compiling, let along interactions with queuing systems etc)
 +
** It's particularly frustrating to me (Ian) that simfactory cannot figure out even simple things about a new machine (e.g. ppn), and if you don't get this right you aren't allowed to run multi-threaded jobs, etc.
 +
*** We have a patch from Mikael Sahrling which detects the number of cores.  Let's commit this during the workshop. 
 +
*** SimFactory should be able to figure out everything that it asks for in sim setup (user name, which optionlist to use for a machine, source base dir (https://trac.einsteintoolkit.org/ticket/2056)).
 +
*** Steve is working on automatically detecting the OS to choose the optionlist, and also something to do with which packages need to be installed (https://bitbucket.org/simfactory/simfactory2/branch/os_detect).
 
* The ET takes a long time to compile
 
* The ET takes a long time to compile
 
** Maybe have multiple thornlists
 
** Maybe have multiple thornlists
Line 26: Line 33:
 
** The names of the tutorials do not allow users to distinguish what they are for.  For example, the Tutorial for New Users and Simplified Tutorial for New Users differ in that the former is run on Queen Bee, and the latter is run on a user's own laptop or workstation.   
 
** The names of the tutorials do not allow users to distinguish what they are for.  For example, the Tutorial for New Users and Simplified Tutorial for New Users differ in that the former is run on Queen Bee, and the latter is run on a user's own laptop or workstation.   
 
** Perhaps all the above should be consolidated
 
** Perhaps all the above should be consolidated
* Configuring the ET on a new machine is very difficult (even just compiling, let along interactions with queuing systems etc)
 
** It's particularly frustrating to me (Ian) that simfactory cannot figure out even simple things about a new machine (e.g. ppn), and if you don't get this right you aren't allowed to run multi-threaded jobs, etc.
 
*** We have a patch from Mikael Sahrling which detects the number of cores.  Let's commit this during the workshop. 
 
*** SimFactory should be able to figure out everything that it asks for in sim setup (user name, which optionlist to use for a machine, source base dir (https://trac.einsteintoolkit.org/ticket/2056)).
 
*** Steve is working on automatically detecting the OS to choose the optionlist, and also something to do with which packages need to be installed (https://bitbucket.org/simfactory/simfactory2/branch/os_detect).
 
 
* On slower laptops, the build stage regularly hangs and has to be killed and restarted (which almost always solves the problem). Can we figure out which components are responsible, and omit them from quick-start tutorials?
 
* On slower laptops, the build stage regularly hangs and has to be killed and restarted (which almost always solves the problem). Can we figure out which components are responsible, and omit them from quick-start tutorials?
** RH: if the slower laptop also has less memory (or is a VM) then I would first try and monitor how much memory in particular the linker consumes. Testing this on my workstation it uses 1-2GB of RAM for a full ET build. On a 32bit VM with a cut down thornlist (no Formaline) it uses ~700MB. Similarly some C++ code takes a hug e amount of memory to compile.
+
** RH: if the slower laptop also has less memory (or is a VM) then I would first try and monitor how much memory in particular the linker consumes. Testing this on my workstation it uses 1-2GB of RAM for a full ET build. On a 32bit VM with a cut down thornlist (no Formaline) it uses ~700MB. Similarly some C++ code takes a hug e amount of memory to compile.

Revision as of 15:19, 3 August 2017

Summary

We would like to improve the experience of new users of the Einstein Toolkit. Some of us will work on this at the North American Einstein Toolkit workshop in August 2017.

If you have suggestions for improvements, or things which don't work well right now, please add them below.

We probably won't have time during the 2-day workshop to address all that is listed here, but we will make an effort to make progress on one or two items.

Brainstorming

(Roughly in order of how likely we are to work on it at the workshop)

Obstacles faced by new users

  • Configuring the ET on a new machine is very difficult (even just compiling, let along interactions with queuing systems etc)
    • It's particularly frustrating to me (Ian) that simfactory cannot figure out even simple things about a new machine (e.g. ppn), and if you don't get this right you aren't allowed to run multi-threaded jobs, etc.
  • The ET takes a long time to compile
    • Maybe have multiple thornlists
  • The ET has a lot of dependencies, or compiles a lot of libraries (which sometimes don't compile successfully)
    • Is the self-built version of OpenMPI ever actually usable?
    • Erik has talked about using Spack for libraries. Maybe we should push for this.
  • Many of the examples do not work
    • At a previous workshop, this was evaluated, but there was no resolution (Fixing examples)
  • There are too many tutorials
  • On slower laptops, the build stage regularly hangs and has to be killed and restarted (which almost always solves the problem). Can we figure out which components are responsible, and omit them from quick-start tutorials?
    • RH: if the slower laptop also has less memory (or is a VM) then I would first try and monitor how much memory in particular the linker consumes. Testing this on my workstation it uses 1-2GB of RAM for a full ET build. On a 32bit VM with a cut down thornlist (no Formaline) it uses ~700MB. Similarly some C++ code takes a hug e amount of memory to compile.