[Modeling-cvs] ProjectModeling/Modeling/ModelMasons/Python_bricks init.tmpl,1.3,1.4
Status: Abandoned
Brought to you by:
sbigaret
From: <sbi...@us...> - 2003-04-25 18:13:41
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/ModelMasons/Python_bricks In directory sc8-pr-cvs1:/tmp/cvs-serv7380/Modeling/ModelMasons/Python_bricks Modified Files: init.tmpl Log Message: Added scripts/mdl_compile_model.py and update the __init__.py generated by mdl_generate_DB_schema.py so that it automatically tries to load the pickled model. Using the pickled model is *much* faster than loading the model from its xml description. Index: init.tmpl =================================================================== RCS file: /cvsroot/modeling/ProjectModeling/Modeling/ModelMasons/Python_bricks/init.tmpl,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** init.tmpl 7 Aug 2002 22:18:48 -0000 1.3 --- init.tmpl 25 Apr 2003 18:13:35 -0000 1.4 *************** *** 3,38 **** # Load the model ! from Modeling import ModelSet ! import os, warnings, StringIO, traceback ! from model_$(model_name) import model_src ! try: ! if ModelSet.defaultModelSet().modelNamed("$(model_name)") is None: ! ModelSet.defaultModelSet().addModelFromXML({'string': model_src}) ! model=ModelSet.defaultModelSet().modelNamed('$(model_name)') ! except: ! exc=StringIO.StringIO() ! traceback.print_exc(file=exc) ! warnings.warn("Couldn't load model 'model_$(model_name).xml'\nReason:\n%s"%exc.getvalue()) ! del exc ! del os, warnings, StringIO, traceback, model_src ! # Or, alternatively: use the xml file (ok for dev. mode, not for install w/ ! # distutils) ! # ! # from Modeling import ModelSet ! # import os, warnings, StringIO, traceback ! # try: ! # if ModelSet.defaultModelSet().modelNamed("$(model_name)") is None: ! # from os import getcwd, path ! # mydir = os.path.abspath(os.path.dirname(__file__)) ! # xmlmodelPath=path.join(mydir,'model_$(model_name).xml') ! # ModelSet.defaultModelSet().addModelFromXML({'file': xmlmodelPath}) ! # model=ModelSet.defaultModelSet().modelNamed('$(model_name)') ! # except: ! # exc=StringIO.StringIO() ! # traceback.print_exc(file=exc) ! # warnings.warn("Couldn't load model 'model_$(model_name).xml'\nReason:\n%s"%exc.getvalue()) ! # del exc ! # ! # del os, warnings, StringIO, traceback --- 3,69 ---- # Load the model ! #--------------------------------------- ! def loadModel(): ! """Load model from either the pickled model created by mdl_compile_model.py ! or from the string stored in model_$(model_name).model_src ! The module containing the pickled model is usually generated with the ! script mdl_compile_model.py ! Simply returns if a model named '$model_name' has already been loaded ! """ ! from Modeling import ModelSet ! import os, warnings, cStringIO, traceback ! if ModelSet.defaultModelSet().modelNamed("$(model_name)") is not None: ! return ! try: ! #if $base_dir: ! from $(base_dir).model_$(model_name)_pickle import model_pickle ! #else ! from model_$(model_name)_pickle import model_pickle ! #end if ! import cPickle ! m=cPickle.loads(model_pickle) ! ModelSet.defaultModelSet().addModel(m) ! model=ModelSet.defaultModelSet().modelNamed("$(model_name)") ! except: ! exc=cStringIO.StringIO() ! traceback.print_exc(file=exc) ! warnings.warn("Couldn't load model from pickle'\n"\ ! "Reason:\n%s"%exc.getvalue()) ! del exc ! else: ! return ! ! try: ! #if $base_dir: ! from $(base_dir).model_$(model_name) import model_src ! #else ! from model_$(model_name) import model_src ! #end if ! ModelSet.defaultModelSet().addModelFromXML({'string': model_src}) ! model=ModelSet.defaultModelSet().modelNamed("$(model_name)") ! except: ! exc=StringIO.StringIO() ! traceback.print_exc(file=exc) ! warnings.warn("Couldn't load model 'model_$(model_name).xml'\nReason:\n%s"%exc.getvalue()) ! del exc ! ! # Or, alternatively: use the xml file (ok for dev. mode, not for install w/ ! # distutils) ! # ! # try: ! # from os import getcwd, path ! # mydir = os.path.abspath(os.path.dirname(__file__)) ! # xmlmodelPath=path.join(mydir,'model_$(model_name).xml') ! # ModelSet.defaultModelSet().addModelFromXML({'file': xmlmodelPath}) ! # model=ModelSet.defaultModelSet().modelNamed('$(model_name)') ! # except: ! # exc=cStringIO.StringIO() ! # traceback.print_exc(file=exc) ! # warnings.warn("Couldn't load model 'model_$(model_name).xml'\nReason:\n%s"%exc.getvalue()) ! # del exc ! # ! # del os, warnings, StringIO, traceback ! #--------------------------------------- ! loadModel() |