You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@madlib.apache.org by kh...@apache.org on 2020/09/22 00:56:06 UTC

[madlib] branch master updated: DL: [AutoML] Set plan_cache_mode when calling fit multiple model

This is an automated email from the ASF dual-hosted git repository.

khannaekta pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/madlib.git


The following commit(s) were added to refs/heads/master by this push:
     new ba6c836  DL: [AutoML] Set plan_cache_mode when calling fit multiple model
ba6c836 is described below

commit ba6c8366975025f29455a481a78fcc307eb6ad2c
Author: Ekta Khanna <ek...@vmware.com>
AuthorDate: Wed Sep 16 11:48:02 2020 -0700

    DL: [AutoML] Set plan_cache_mode when calling fit multiple model
    
    JIRA: MADLIB-1447
    
    There is a known issue when calling fit multiple model with huge model
    weights(JIRA: MADLIB-1414). The fix for that issue was to set
    `plan_cache_mode` guc in gpdb6 to `force_generic_plan`. For automl,
    since we directly call madlib_keras_fit_multiple_model from the within
    the automl function, we need to set the GUC plan_cache_mode when calling
    it.
---
 src/ports/postgres/modules/deep_learning/madlib_keras_automl.py_in | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/ports/postgres/modules/deep_learning/madlib_keras_automl.py_in b/src/ports/postgres/modules/deep_learning/madlib_keras_automl.py_in
index 696f031..d57a762 100644
--- a/src/ports/postgres/modules/deep_learning/madlib_keras_automl.py_in
+++ b/src/ports/postgres/modules/deep_learning/madlib_keras_automl.py_in
@@ -342,7 +342,8 @@ class KerasAutoML():
                 i_dict[k['mst_key']] += 1
             self.warm_start = int(i != 0)
             mcf = self.metrics_compute_frequency if self._is_valid_metrics_compute_frequency(num_iterations) else None
-            model_training = FitMultipleModel(self.schema_madlib, self.source_table, AutoMLSchema.TEMP_OUTPUT_TABLE,
+            with SetGUC("plan_cache_mode", "force_generic_plan"):
+                model_training = FitMultipleModel(self.schema_madlib, self.source_table, AutoMLSchema.TEMP_OUTPUT_TABLE,
                                               AutoMLSchema.TEMP_MST_TABLE, num_iterations, self.use_gpus,
                                               self.validation_table, mcf, self.warm_start, self.name, self.description)
             self.update_model_output_table(model_training)