diff --git a/doc/notebooks/demo_ve.ipynb b/doc/notebooks/demo_ve.ipynb index f1ff3dd8d09bdec52a4a180e17654b7d80e06ad8..0604b21c227ed4331ac2887dbe9f996f242df638 100644 --- a/doc/notebooks/demo_ve.ipynb +++ b/doc/notebooks/demo_ve.ipynb @@ -43,7 +43,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 1, "id": "5d56a49c-5963-4f86-a8d8-0b753a971e52", "metadata": {}, "outputs": [], @@ -54,7 +54,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 2, "id": "9c204a47-a39b-450b-9026-9bb63cf54e83", "metadata": {}, "outputs": [], @@ -64,7 +64,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 3, "id": "5bbc4118-e1b7-412b-9dc8-7d7d524786df", "metadata": {}, "outputs": [], @@ -75,19 +75,19 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 4, "id": "85641913-f00a-4f95-af69-c7646ad5b3d0", "metadata": {}, "outputs": [], "source": [ - "@ps.kernel(config)\n", + "@ps.kernel_config(config)\n", "def vadd():\n", " a[0] @= b[0] + c[0]" ] }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 5, "id": "33097862-9f60-4624-a1f2-0fdfd82831bc", "metadata": {}, "outputs": [ @@ -115,19 +115,19 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 6, "id": "99aee06b-1704-4d06-b261-cc07a6a7f9a3", "metadata": {}, "outputs": [], "source": [ - "@ps.kernel(config)\n", + "@ps.kernel_config(config)\n", "def daxpy():\n", " b[0] @= alpha * a[0] + b[0]" ] }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 7, "id": "e79ab7bb-128e-47ee-9d53-8779c4f55d7e", "metadata": {}, "outputs": [ @@ -155,19 +155,19 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 8, "id": "4bb14872-11de-42cc-b5fc-4f995c7a6725", "metadata": {}, "outputs": [], "source": [ - "@ps.kernel(config)\n", + "@ps.kernel_config(config)\n", "def daxpy_one_off():\n", " b[0] @= alpha * a[0] + b[0]" ] }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 9, "id": "457cc1fe-1aef-44bd-9fd1-f914e019c933", "metadata": {}, "outputs": [ @@ -195,87 +195,51 @@ }, { "cell_type": "code", - "execution_count": 38, - "id": "fea2f8e4", - "metadata": {}, - "outputs": [], - "source": [ - "#from pystencils.kerncraft_coupling import generate_benchmark" - ] - }, - { - "cell_type": "code", - "execution_count": 39, - "id": "4fbd5c90", - "metadata": {}, - "outputs": [], - "source": [ - "#print(generate_benchmark(kernel_vadd))" - ] - }, - { - "cell_type": "code", - "execution_count": 40, + "execution_count": 12, "id": "ae05beb9-745f-4885-ad4f-667aae867f05", "metadata": {}, "outputs": [], "source": [ - "from pystencils.benchmark import kernel_header, kernel_source, generate_benchmark\n", + "from pystencils_benchmark import kernel_header, kernel_source, generate_benchmark\n", "from pathlib import Path" ] }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 13, "id": "7dfa86e1-8962-47df-900c-3133883a19c7", "metadata": {}, "outputs": [], "source": [ - "example_path = Path.cwd() / 'example'\n", - "example_path.mkdir(parents=True, exist_ok=True)" + "example_path = Path.cwd() / 'example'" ] }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 21, "id": "dd39502f-d935-4b88-b8c8-896b1a294bf9", "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "Unknown dialect='c'", - "output_type": "error", - "traceback": [ - "\u001B[0;31m---------------------------------------------------------------------------\u001B[0m", - "\u001B[0;31mValueError\u001B[0m Traceback (most recent call last)", - "\u001B[0;32m/tmp/ipykernel_209040/990452426.py\u001B[0m in \u001B[0;36m<module>\u001B[0;34m\u001B[0m\n\u001B[0;32m----> 1\u001B[0;31m \u001B[0mgenerate_benchmark\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mkernel_vadd\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mexample_path\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 2\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n", - "\u001B[0;32m~/git/pystencils/pystencils/benchmark/benchmark.py\u001B[0m in \u001B[0;36mgenerate_benchmark\u001B[0;34m(kernel_ast, path, dialect, kernel_name)\u001B[0m\n\u001B[1;32m 13\u001B[0m \u001B[0mkernel_name\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mkernel_ast\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mfunction_name\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 14\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m---> 15\u001B[0;31m \u001B[0mheader\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mkernel_header\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mkernel_ast\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mdialect\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 16\u001B[0m \u001B[0;32mwith\u001B[0m \u001B[0mopen\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mpath\u001B[0m \u001B[0;34m/\u001B[0m \u001B[0;34mf'{kernel_name}.h'\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0;34m'w+'\u001B[0m\u001B[0;34m)\u001B[0m \u001B[0;32mas\u001B[0m \u001B[0mf\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 17\u001B[0m \u001B[0mf\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mwrite\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mheader\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", - "\u001B[0;32m~/git/pystencils/pystencils/benchmark/benchmark.py\u001B[0m in \u001B[0;36mkernel_header\u001B[0;34m(kernel_ast, dialect)\u001B[0m\n\u001B[1;32m 23\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 24\u001B[0m \u001B[0;32mdef\u001B[0m \u001B[0mkernel_header\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mkernel_ast\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mdialect\u001B[0m\u001B[0;34m=\u001B[0m\u001B[0;34m'c'\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m---> 25\u001B[0;31m \u001B[0mfunction_signature\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mgenerate_c\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mkernel_ast\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mdialect\u001B[0m\u001B[0;34m=\u001B[0m\u001B[0mdialect\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0msignature_only\u001B[0m\u001B[0;34m=\u001B[0m\u001B[0;32mTrue\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 26\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 27\u001B[0m jinja_context = {\n", - "\u001B[0;32m~/git/pystencils/pystencils/backends/cbackend.py\u001B[0m in \u001B[0;36mgenerate_c\u001B[0;34m(ast_node, signature_only, dialect, custom_backend, with_globals)\u001B[0m\n\u001B[1;32m 76\u001B[0m \u001B[0mprinter\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mOpenClBackend\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0msignature_only\u001B[0m\u001B[0;34m=\u001B[0m\u001B[0msignature_only\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 77\u001B[0m \u001B[0;32melse\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m---> 78\u001B[0;31m \u001B[0;32mraise\u001B[0m \u001B[0mValueError\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0;34mf'Unknown {dialect=}'\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 79\u001B[0m \u001B[0mcode\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mprinter\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mast_node\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 80\u001B[0m \u001B[0;32mif\u001B[0m \u001B[0;32mnot\u001B[0m \u001B[0msignature_only\u001B[0m \u001B[0;32mand\u001B[0m \u001B[0misinstance\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mast_node\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mKernelFunction\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", - "\u001B[0;31mValueError\u001B[0m: Unknown dialect='c'" - ] - } - ], + "outputs": [], "source": [ - "generate_benchmark(kernel_vadd, example_path)" + "generate_benchmark([kernel_vadd, kernel_daxpy, kernel_daxpy_one_off], example_path)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "id": "f084548f-3a8e-4d45-8c7e-5845013b222e", "metadata": {}, "outputs": [], "source": [ "# Examples:\n", - "generate_benchmark(kernel_daxpy, example_path)\n", - "generate_benchmark(kernel_vadd, example_path)\n", - "generate_benchmark(kernel_daxpy_one_off, example_path)" + "# generate_benchmark(kernel_daxpy, example_path)\n", + "# generate_benchmark(kernel_vadd, example_path)\n", + "# generate_benchmark(kernel_daxpy_one_off, example_path)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "954b5ec7-a88a-4723-bd7f-227a3919b32d", "metadata": {}, "outputs": [], @@ -283,7 +247,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "f51f2aff-f232-4de9-a0c4-94d3682eff86", "metadata": {}, "outputs": [],