{ "info": { "author": "Samuel KORTAS", "author_email": "samuel.kortas@kaust.edu.sa", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Science/Research", "License :: OSI Approved :: BSD License", "Operating System :: POSIX", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Topic :: Software Development :: Build Tools", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Clustering", "Topic :: System :: Distributed Computing", "Topic :: Utilities" ], "description": "NAME\n\n decimate - a fault-tolerant SLURM scheduler extension\n\nSYNOPSIS\n\n dbatch [ Slurm options ] [ --check ]\n [ --max-retry= ]\n script [args...]\n\nDESCRIPTION\n\n Developped by the KAUST Supercomputing Laboratory (KSL),\n decimate is a SLURM extension written in python designed to handle\n dependent jobs more easely and efficiently.\n\n Decimate transparently adds parameters to SLURM sbatch command\n to check the correctness of jobs and automatically\n reschedules jobs found faulty.\n\n Using Decimate on Shaheen II, one can submit, run, monitor or\n terminate a workflow composed of dependent jobs. If asked,\n thanks to standardized or customized messages, the user will be\n informed by mail of the progress of its workflow on the system.\n\n In case of failure of one part of tne workflow, decimate\n automatically detects the failure, signals it to the user and\n launches the misbehaving part after having fixed the job\n dependency. By default if the same failure happens three\n consecutive times, decimate cancels the whole workfow removing\n all the depending jobs from the scheduling. In a next version,\n decimate will allow the automatic restarting of the workflow\n once the problem causing its failure has been cured.\n\n decimate also allows the user to define his own mail alerts\n that can be sent at any point of the workflow through a call to\n a python method. This feature will also be available from bash\n in a next version.\n\n Some customized checking functions can also be designed by the\n user. Their purpose is to validate if a step of the workflow\n was succesful or not. It could involved checking for the\n presence of some result files, grepping some error or success\n messages in them, computing ratio or checksum... These\n intermediate results can be easely transmitted to decimate\n validating or not the correctness of any step. They can also be\n forwarded by mail to the user where as the workflow is\n executing.\n\nUSE\n\n At this moment, jobs only need to be submitted through the\n dbatch\n command that accepts exactely the same parameters as the\n original SLURM sbatch command plus the new parameters\n\n --check=SCRIPT_FILE\n\t\t where SCRIPT_FILE is a python\n\t\t or shell script\n\t\t\t to check if results are ok.\n\n --max-retry=MAX_RETRY\n\t\t number of time a step can fail and be\n restarted automatically before failing the \n whole workflow (3 per default)\n\n sslog tails out the decimate logging file attached to the\n current directory, tracking all the jobs that were launched\n with dbatch from this directory.\n\n sstatus gives the current status of the workflow excecuting\n in the current directory.\n\n Decimate is still in a beta phase and under test with some of\n our KSL users. More documentations will be provided once the\n stabilized and fully tested version is made available by the\n end of June 2018.\n\n If interested in testing decimate or contributing, please send\n a mail to help@hpc.kaust.edu.sa\n\nAUTHOR\n\n Written by Samuel Kortas (samuel.kortas (at) kaust.edu.sa)\n\nREPORTING BUGS\n\n Report decimate bugs to help@hpc.kaust.edu.sa\n\n\nCOPYRIGHT\n Copyright (c) 2017, KAUST Supercomputing Laboratory\n All rights reserved.\n\n Redistribution and use in source and binary forms, with or without\n modification, are permitted provided that the following conditions are met:\n\n * Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n * Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\nSEE ALSO\n\n decimate official documentation pages:\n \n\n KAUST Supercomputing Laboratory: \n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://decimate.readthedocs.io", "keywords": "scheduler extension workflow parametric", "license": "", "maintainer": "Samuel KORTAS", "maintainer_email": "samuel.kortas@kaust.edu.sa", "name": "decimate", "package_url": "https://pypi.org/project/decimate/", "platform": "", "project_url": "https://pypi.org/project/decimate/", "project_urls": { "Homepage": "http://decimate.readthedocs.io" }, "release_url": "https://pypi.org/project/decimate/0.9.6/", "requires_dist": [ "ClusterShell", "pandas", "check-manifest; extra == 'dev'", "coverage; extra == 'test'" ], "requires_python": ">=2.7, <3", "summary": "A fault-tolerant SLURM scheduler extension", "version": "0.9.6" }, "last_serial": 3746844, "releases": { "0.9.1": [ { "comment_text": "", "digests": { "md5": "c2d81fd966fed4be169b3e5d0bc425c0", "sha256": "ab68fc0a8866b6c3d680ddb940c5d5926ee8971f3e82b65f7f6efcadf64b7a4b" }, "downloads": -1, "filename": "decimate-0.9.1-py2-none-any.whl", "has_sig": false, "md5_digest": "c2d81fd966fed4be169b3e5d0bc425c0", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=2.7, <3", "size": 94837, "upload_time": "2018-01-31T17:38:00", "url": "https://files.pythonhosted.org/packages/01/15/7068b0f1b398845974518db3447da13d83821dbd5c81cdf4ebc62d0c6ac9/decimate-0.9.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "63624b55646d382a7d93bb45ba0149cf", "sha256": "4af2b084ffe6eadefb303d247f00010859729eef9aebf09181b03f34ce24c964" }, "downloads": -1, "filename": "decimate-0.9.1.tar.gz", "has_sig": false, "md5_digest": "63624b55646d382a7d93bb45ba0149cf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 88962, "upload_time": "2018-01-31T17:38:03", "url": "https://files.pythonhosted.org/packages/58/6d/e8d6528dc2c9bb4b6bbdfdb16261b043ebe3787d012a7ec8dc3ded33ab97/decimate-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "36c242bcc72c8e7c90c47e1d8af41f49", "sha256": "478f08a2b38adfe518ada7cfa227e54904b034c834d3a4cf65308def00c8a726" }, "downloads": -1, "filename": "decimate-0.9.2-py2-none-any.whl", "has_sig": false, "md5_digest": "36c242bcc72c8e7c90c47e1d8af41f49", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=2.7, <3", "size": 82374, "upload_time": "2018-02-09T03:24:23", "url": "https://files.pythonhosted.org/packages/80/f9/151dae578f9f6721deb4eaf76cdb95ba283257a784e1f759e0754c82adc3/decimate-0.9.2-py2-none-any.whl" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "d93128f7406a58b353086ba95d7e0ca7", "sha256": "59a3b5a7a5aeaedfcb97852074b0e74e5f195c225359de42f322e348bb2693d2" }, "downloads": -1, "filename": "decimate-0.9.3-py2.7.egg", "has_sig": false, "md5_digest": "d93128f7406a58b353086ba95d7e0ca7", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": ">=2.7, <3", "size": 174683, "upload_time": "2018-04-08T21:19:45", "url": "https://files.pythonhosted.org/packages/1e/44/19d84ae1baf579a9f341a7ce1b99a8b45d086decec20ae297e3628f4af53/decimate-0.9.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "8d4fd8a2e7fc127bfbfc96ef7d54137f", "sha256": "2f3badfbd085cc46a3fbd6cf6ab7eb15001a4da33b48486d7506075d3bfcd6dd" }, "downloads": -1, "filename": "decimate-0.9.3-py2-none-any.whl", "has_sig": false, "md5_digest": "8d4fd8a2e7fc127bfbfc96ef7d54137f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=2.7, <3", "size": 90555, "upload_time": "2018-02-10T19:46:19", "url": "https://files.pythonhosted.org/packages/89/d6/313ac5089c4a226df0cf8626584534cea5c138834f1dfa9bc29d9829cfb6/decimate-0.9.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "797e5f0fe977c2af38b3f676e0619e04", "sha256": "34d34a831d65edffc64be5739174316fbcbd458e7901fcb823a075d80342adb1" }, "downloads": -1, "filename": "decimate-0.9.3.tar.gz", "has_sig": false, "md5_digest": "797e5f0fe977c2af38b3f676e0619e04", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 84557, "upload_time": "2018-02-10T19:46:22", "url": "https://files.pythonhosted.org/packages/08/e7/ae3ce08f06554c4bbfc43c3fe3bcbee4df1f2428ad87bfb177cbb3a3d60e/decimate-0.9.3.tar.gz" } ], "0.9.4": [ { "comment_text": "", "digests": { "md5": "cc3f9d16c7627760da95fceb93693d2c", "sha256": "e461e7abaade2e305c4a6a116608c8bdb5c41e8862d3fe8cfabd81d1e09141f5" }, "downloads": -1, "filename": "decimate-0.9.4-py2-none-any.whl", "has_sig": false, "md5_digest": "cc3f9d16c7627760da95fceb93693d2c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 90808, "upload_time": "2018-02-24T03:38:43", "url": "https://files.pythonhosted.org/packages/7d/33/032a35889d0d1f732a82ef2d788ee3f4d6d749d138d7348c5e52891bca86/decimate-0.9.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b232a9366a9b93b8f428dc153d4ba5e", "sha256": "bb49a09c4ffd81f388b6e6812b140f3c7cffd6f5847a3f30d90d542f8d2cdc70" }, "downloads": -1, "filename": "decimate-0.9.4.tar.gz", "has_sig": false, "md5_digest": "2b232a9366a9b93b8f428dc153d4ba5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 75986, "upload_time": "2018-02-24T03:38:47", "url": "https://files.pythonhosted.org/packages/20/3f/77da9e0fe38583ff1fa38f5337d808f2d004b3a1856e3bce5b4983d90361/decimate-0.9.4.tar.gz" } ], "0.9.6": [ { "comment_text": "", "digests": { "md5": "6d438094e69be73db43b62d86dd550b2", "sha256": "3b6b36e954aa07715bcbfea50cb4c4523ce062c64f9b5500a2afcae4ea60b38a" }, "downloads": -1, "filename": "decimate-0.9.6-py2.7.egg", "has_sig": false, "md5_digest": "6d438094e69be73db43b62d86dd550b2", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": ">=2.7, <3", "size": 179853, "upload_time": "2018-04-08T21:19:46", "url": "https://files.pythonhosted.org/packages/45/4f/3c4b2a940cde690e479af94fe1e08b524403bdc9ee044ae1aca75ce2d349/decimate-0.9.6-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "9b4d2bf758b286c486e9213e1a6a2f98", "sha256": "48d14a0caf5a6506f698c31c27ccc6d74dfb3bda9b1a47acb3d1e5b15d72d6f8" }, "downloads": -1, "filename": "decimate-0.9.6-py2-none-any.whl", "has_sig": false, "md5_digest": "9b4d2bf758b286c486e9213e1a6a2f98", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=2.7, <3", "size": 93844, "upload_time": "2018-04-08T21:19:43", "url": "https://files.pythonhosted.org/packages/0d/33/bafdc8da64b736bfd670c440e269c70b7fa633284dd57a871dbeb1da3031/decimate-0.9.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f75765f00e2aac9789fe7c1bc5a868ac", "sha256": "5c3e4749e7b978bebadf44752ba5bab3562fdebbecd59c21a723dae0ac3d3710" }, "downloads": -1, "filename": "decimate-0.9.6.tar.gz", "has_sig": false, "md5_digest": "f75765f00e2aac9789fe7c1bc5a868ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 87816, "upload_time": "2018-04-08T21:19:48", "url": "https://files.pythonhosted.org/packages/58/12/81431a3d5b9a4b526342170376ca563e3fd960d8eb895dde9a342a215449/decimate-0.9.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6d438094e69be73db43b62d86dd550b2", "sha256": "3b6b36e954aa07715bcbfea50cb4c4523ce062c64f9b5500a2afcae4ea60b38a" }, "downloads": -1, "filename": "decimate-0.9.6-py2.7.egg", "has_sig": false, "md5_digest": "6d438094e69be73db43b62d86dd550b2", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": ">=2.7, <3", "size": 179853, "upload_time": "2018-04-08T21:19:46", "url": "https://files.pythonhosted.org/packages/45/4f/3c4b2a940cde690e479af94fe1e08b524403bdc9ee044ae1aca75ce2d349/decimate-0.9.6-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "9b4d2bf758b286c486e9213e1a6a2f98", "sha256": "48d14a0caf5a6506f698c31c27ccc6d74dfb3bda9b1a47acb3d1e5b15d72d6f8" }, "downloads": -1, "filename": "decimate-0.9.6-py2-none-any.whl", "has_sig": false, "md5_digest": "9b4d2bf758b286c486e9213e1a6a2f98", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=2.7, <3", "size": 93844, "upload_time": "2018-04-08T21:19:43", "url": "https://files.pythonhosted.org/packages/0d/33/bafdc8da64b736bfd670c440e269c70b7fa633284dd57a871dbeb1da3031/decimate-0.9.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f75765f00e2aac9789fe7c1bc5a868ac", "sha256": "5c3e4749e7b978bebadf44752ba5bab3562fdebbecd59c21a723dae0ac3d3710" }, "downloads": -1, "filename": "decimate-0.9.6.tar.gz", "has_sig": false, "md5_digest": "f75765f00e2aac9789fe7c1bc5a868ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 87816, "upload_time": "2018-04-08T21:19:48", "url": "https://files.pythonhosted.org/packages/58/12/81431a3d5b9a4b526342170376ca563e3fd960d8eb895dde9a342a215449/decimate-0.9.6.tar.gz" } ] }