{ "info": { "author": "Band of Four", "author_email": "", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication", "Programming Language :: Python :: 3", "Topic :: Software Development :: Testing" ], "description": "# Master of Kernel Testing\n\n**MOKT** is a library for data-driven testing of OpenCL kernels. It obtains valid\ninputs and outputs from TensorFlow models \u2014 this way, you can easily get test data for a wide\nvariety of machine learning operations, ranging from primitives such as\n[ReLU](https://github.com/band-of-four/master-of-kernel-testing/blob/master/examples/relu.py)\nand [element-wise addition](https://github.com/band-of-four/master-of-kernel-testing/blob/master/examples/add.py)\nto whole subgraphs, e.g. ResNet's bottleneck blocks.\n\n## Installation\n\nInstall using pip:\n\n```\npip install mokt\n```\n\nNote that only Python 3 is supported.\n\n## Usage\n\nCheck out [examples](https://github.com/band-of-four/master-of-kernel-testing/tree/master/examples)\nto see MOKT in action.\n\n### Data extraction\n\nIt is recommended that you read the\n[data extraction design note](https://github.com/band-of-four/master-of-kernel-testing/blob/master/design_notes/Extracting%20Test%20Data%20from%20TensorFlow%20Models.ipynb) to get familiar with the way MOKT interacts with TensorFlow.\n\nThe high-level data API is used as follows:\n\n```python\n@TestData(\n tf_checkpoint_dir='/path/to/checkpoint/dir',\n tf_values={'input': 'operation/name:0', 'output': 'another/op:0'})\ndef my_test_func(test_data):\n print(type(test_data['input'])) # \n\nmy_test_func()\n```\n\nChoosing the correct nodes for your tests is easier with [TensorBoard](https://www.tensorflow.org/guide/summaries_and_tensorboard),\nwhich visualizes the computational graph and shows helpful info, such as tensor shapes, operation names, etc.\n\n### Running OpenCL kernels\n\nExecution is performed in a [TestEnvironment](https://github.com/band-of-four/master-of-kernel-testing/blob/master/mokt/test_environment.py),\nwhich conveniently wraps host state and handles data conversion (read the class documentation for more information).\n\nYou may of course choose to write your own specialized implementation and use this library for data extraction only.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/band-of-four/master-of-kernel-testing", "keywords": "", "license": "CC0 1.0", "maintainer": "", "maintainer_email": "", "name": "mokt", "package_url": "https://pypi.org/project/mokt/", "platform": "", "project_url": "https://pypi.org/project/mokt/", "project_urls": { "Homepage": "https://github.com/band-of-four/master-of-kernel-testing" }, "release_url": "https://pypi.org/project/mokt/0.9/", "requires_dist": [ "tensorflow (>=1.5)", "pyopencl", "termcolor" ], "requires_python": "", "summary": "A simple framework for automated testing of OpenCL kernels", "version": "0.9" }, "last_serial": 4116061, "releases": { "0.9": [ { "comment_text": "", "digests": { "md5": "e6cd970684847139368cb01264e09961", "sha256": "004c480d274f9ba55730ea9b0db98b6e3ff4367148880c3f419f775221373db5" }, "downloads": -1, "filename": "mokt-0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "e6cd970684847139368cb01264e09961", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7109, "upload_time": "2018-07-30T11:19:54", "url": "https://files.pythonhosted.org/packages/9a/6c/eb1d9f0a5636300a2e3a9e03dd29058dd8748ee07d4938075498b8b2e4f2/mokt-0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8d4859e1d20201d587b62cac87fe982", "sha256": "ddd6ccf6cbac1a1b05978242f9531453b131f5daad9622fee87de61563bb325e" }, "downloads": -1, "filename": "mokt-0.9.tar.gz", "has_sig": false, "md5_digest": "c8d4859e1d20201d587b62cac87fe982", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5957, "upload_time": "2018-07-30T11:19:55", "url": "https://files.pythonhosted.org/packages/8e/26/9b1cbc434d22724f5cb0e81eab5c1a3ec2361853bd43d74304112f0495bc/mokt-0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e6cd970684847139368cb01264e09961", "sha256": "004c480d274f9ba55730ea9b0db98b6e3ff4367148880c3f419f775221373db5" }, "downloads": -1, "filename": "mokt-0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "e6cd970684847139368cb01264e09961", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7109, "upload_time": "2018-07-30T11:19:54", "url": "https://files.pythonhosted.org/packages/9a/6c/eb1d9f0a5636300a2e3a9e03dd29058dd8748ee07d4938075498b8b2e4f2/mokt-0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8d4859e1d20201d587b62cac87fe982", "sha256": "ddd6ccf6cbac1a1b05978242f9531453b131f5daad9622fee87de61563bb325e" }, "downloads": -1, "filename": "mokt-0.9.tar.gz", "has_sig": false, "md5_digest": "c8d4859e1d20201d587b62cac87fe982", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5957, "upload_time": "2018-07-30T11:19:55", "url": "https://files.pythonhosted.org/packages/8e/26/9b1cbc434d22724f5cb0e81eab5c1a3ec2361853bd43d74304112f0495bc/mokt-0.9.tar.gz" } ] }