By default Lmod only uses the cache file when executing avail and spider.
You can tell Lmod to use the spider cache for loads by configuring Lmod
that way (see ./configure --help for details). However it is your site's
responsibility to keep the cache up-to-date. If it's not in the cache then
Lmod won't be able to load the modulefile if you are using cache based
loads.
If you are not using cached based loads, then Lmod walks all directories in
the modulepath and it parses every .version file. How else is Lmod going
to know about what the defaults are?
R.
On Wed, Apr 19, 2017 at 3:05 AM, John Donners <joh...@su...>
wrote:
> Hi,
>
> we're in the transitioning phase from a Tcl-based module command to Lmod
> and
> Lmod is much slower in loading modules than the Tcl version. It takes
> about 2 seconds
> to load a module, even with a spider cache. We're using Lmod 7.3.
>
> It looke like Lmod parses all .version files before loading:
>
> ...
> Setting mcp to MC_Load
> registerUserLoads(mA){
> userName: delft3d
> } registerUserLoads
> Master:singleton(safe: nil){
> s_master: table: 0x9d8830, safe: true
> } Master:singleton
> MasterControl:load(mA={delft3d}){
> Master:load(mA={delft3d}){
> ModuleA:singleton(t){
> ModuleA:__new(){
> calling DirTree:new()
> MRC:singleton(){
> MRC l_build(self,fnA){
> } MRC l_build
> } MRC:singleton
> capture(/usr/bin/tclsh /hpc/eb/Lmod-7.3/lmod/lmod/libexec/RC2lua.tcl
> /hpc/sw/modules/modulefiles/applications/ecearth/.version){
> } capture
> MRC:parseModA_for_moduleA(ecearth, modA){
> entry.kind: set-default-version
> version: 2.3
> } MRC:parseModA_for_moduleA
> capture(/usr/bin/tclsh /hpc/eb/Lmod-7.3/lmod/lmod/libexec/RC2lua.tcl
> /hpc/sw/modules/modulefiles/applications/lb3d/.version){
> } capture
> MRC:parseModA_for_moduleA(lb3d, modA){
> entry.kind: set-default-version
> version: 7.0
> } MRC:parseModA_for_moduleA
> capture(/usr/bin/tclsh /hpc/eb/Lmod-7.3/lmod/lmod/libexec/RC2lua.tcl
> /hpc/sw/modules/modulefiles/applications/xflow/.version){
> } capture
> MRC:parseModA_for_moduleA(xflow, modA){
> entry.kind: set-default-version
> version: v98.00
> } MRC:parseModA_for_moduleA
> capture(/usr/bin/tclsh /hpc/eb/Lmod-7.3/lmod/lmod/libexec/RC2lua.tcl
> /hpc/sw/modules/modulefiles/applications/espresso/.version){
> } capture
> MRC:parseModA_for_moduleA(espresso, modA){
> entry.kind: set-default-version
> version: 5.0.3
> } MRC:parseModA_for_moduleA
>
>
> etc.
>
> Since our current modules have .version files in pretty much any
> directory, this is slow.
> The cache file contains the .version files as well, but these do not seem
> to be used.
>
> Is this deliberate or is it not yet implemented?
>
> Cheers,
> John
>
> --
> We are ISO 27001 certified and meet the high requirements for information
> security.
>
> | John Donners | Senior consultant | Compute | SURFsara | Science Park 140
> | 1098 XG Amsterdam | Nederland |
> | www.surfsara.nl |
>
>
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Lmod-users mailing list
> Lmo...@li...
> https://lists.sourceforge.net/lists/listinfo/lmod-users
>
>
--
Robert McLay, Ph.D.
TACC
Manager, HPC Software Tools
(512) 232-8104
|