From c4845044005d0b22d25374a2dbd04adbb6983308 Mon Sep 17 00:00:00 2001 From: Alex Fikl Date: Wed, 7 Feb 2018 19:53:07 -0600 Subject: [PATCH 01/11] fix some of the examples --- examples/python/find-centers.py | 2 +- examples/python/global_barrier_removal.py | 13 ++++++++----- examples/python/rank-one.py | 19 ++++++++++++------- examples/python/sparse.py | 10 ++++++---- 4 files changed, 27 insertions(+), 17 deletions(-) diff --git a/examples/python/find-centers.py b/examples/python/find-centers.py index c5e5e9161..1822d3b79 100644 --- a/examples/python/find-centers.py +++ b/examples/python/find-centers.py @@ -26,7 +26,7 @@ knl = lp.make_kernel( <> post_dist_sq = if(matches, dist_sq, HUGE) end - <> min_dist_sq, <> min_ictr = argmin(ictr, post_dist_sq) + <> min_dist_sq, <> min_ictr = argmin(ictr, ictr, post_dist_sq) tgt_to_qbx_center[itgt] = if(min_dist_sq < HUGE, min_ictr, -1) end diff --git a/examples/python/global_barrier_removal.py b/examples/python/global_barrier_removal.py index b71c56119..7ab049cd1 100644 --- a/examples/python/global_barrier_removal.py +++ b/examples/python/global_barrier_removal.py @@ -6,14 +6,17 @@ import pyopencl.array knl = lp.make_kernel( "{ [i,k]: 0<=i rowstart = rowstarts[i] - <> rowend = rowstarts[i] - <> length = rowend - rowstart - y[i] = sum(j, values[rowstart+j] * x[colindices[rowstart + j]]) + for i + <> rowstart = rowstarts[i] + <> rowend = rowstarts[i] + <> length = rowend - rowstart + y[i] = sum(j, values[rowstart+j] * x[colindices[rowstart + j]]) + end """) k = lp.add_and_infer_dtypes(k, { -- GitLab From 5733d7010a594348a93b75dc2c5dfb70e1d9d4a0 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Thu, 8 Feb 2018 22:14:42 -0600 Subject: [PATCH 02/11] Add test for examples --- .gitlab-ci.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c76590f62..796907400 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -116,6 +116,20 @@ Python 3.6 POCL Twice With Cache: # except: # - tags +Python 3.6 POCL Examples: + script: + - export PY_EXE=python3.6 + - export PYOPENCL_TEST=portable + - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib" + - curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-and-run-examples.sh + - ". ./build-py-project-and-run-examples.sh" + tags: + - python3.6 + - pocl + - large-node + except: + - tags + CentOS binary: script: - (cd build-helpers; ./make-linux-build-docker.sh --nodate) -- GitLab From ec4452bcdfc121d05b1380e03e8256c2483a1f60 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Thu, 8 Feb 2018 22:25:20 -0600 Subject: [PATCH 03/11] Require ispc for examples --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 796907400..e767dd9fe 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -127,6 +127,7 @@ Python 3.6 POCL Examples: - python3.6 - pocl - large-node + - ispc except: - tags -- GitLab From 992c94361f3317ad103501bc448bd9ddb9f49c73 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Thu, 8 Feb 2018 22:59:37 -0600 Subject: [PATCH 04/11] Fix example runner script --- .gitlab-ci.yml | 1 - build-py-project-and-run-examples.sh | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 build-py-project-and-run-examples.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e767dd9fe..7e5bce793 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -121,7 +121,6 @@ Python 3.6 POCL Examples: - export PY_EXE=python3.6 - export PYOPENCL_TEST=portable - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib" - - curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-and-run-examples.sh - ". ./build-py-project-and-run-examples.sh" tags: - python3.6 diff --git a/build-py-project-and-run-examples.sh b/build-py-project-and-run-examples.sh new file mode 100644 index 000000000..a149e883f --- /dev/null +++ b/build-py-project-and-run-examples.sh @@ -0,0 +1,16 @@ +#! /bin/bash + +set -e + +curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project.sh +source build-py-project.sh + +cd examples +for i in $(find . -name '*.py' -print ); do + echo "-----------------------------------------------------------------------" + echo "RUNNING $i" + echo "-----------------------------------------------------------------------" + dn=$(dirname "$i") + bn=$(basename "$i") + (cd $dn; ${PY_EXE} "$bn") +done -- GitLab From 3114b38dd2ca3b20b25a43bfaccf721466c71d06 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Thu, 8 Feb 2018 23:19:04 -0600 Subject: [PATCH 05/11] Rename through-loopy example --- examples/python/{hello-loopy-lp.py => hello-loopy.loopy} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/python/{hello-loopy-lp.py => hello-loopy.loopy} (100%) diff --git a/examples/python/hello-loopy-lp.py b/examples/python/hello-loopy.loopy similarity index 100% rename from examples/python/hello-loopy-lp.py rename to examples/python/hello-loopy.loopy -- GitLab From ee71fd036c39a671be20bd21b57ea9274f5d7211 Mon Sep 17 00:00:00 2001 From: Alex Fikl Date: Fri, 9 Feb 2018 13:38:49 -0600 Subject: [PATCH 06/11] fix the fortran examples as well --- examples/fortran/foo.floopy | 30 -- .../fortran/ipython-integration-demo.ipynb | 326 ++++++++---------- examples/fortran/matmul.floopy | 2 +- examples/fortran/tagging.floopy | 15 +- examples/fortran/volumeKernelSimple.floopy | 38 -- loopy/ipython_ext.py | 4 +- 6 files changed, 155 insertions(+), 260 deletions(-) delete mode 100644 examples/fortran/foo.floopy delete mode 100644 examples/fortran/volumeKernelSimple.floopy diff --git a/examples/fortran/foo.floopy b/examples/fortran/foo.floopy deleted file mode 100644 index 6b8741e11..000000000 --- a/examples/fortran/foo.floopy +++ /dev/null @@ -1,30 +0,0 @@ -subroutine fill(out, a, n) - implicit none - - real_type a, out(n) - integer n, i - - do i = 1, n - out(i) = a - end do - do i = 1, n - out(i) = out(i) * factor - end do -end - -!$loopy begin -! -! SOURCE = lp.c_preprocess(SOURCE, [ -! "factor 4.0", -! "real_type real*8", -! ]) -! fill, = lp.parse_fortran(SOURCE, FILENAME) -! fill = lp.split_iname(fill, "i", 128, -! outer_tag="g.0", inner_tag="l.0") -! fill = lp.split_iname(fill, "i_1", 128, -! outer_tag="g.0", inner_tag="l.0") -! RESULT = [fill] -! -!$loopy end - -! vim:filetype=floopy diff --git a/examples/fortran/ipython-integration-demo.ipynb b/examples/fortran/ipython-integration-demo.ipynb index c2b34f1d1..7a5c8257b 100644 --- a/examples/fortran/ipython-integration-demo.ipynb +++ b/examples/fortran/ipython-integration-demo.ipynb @@ -1,190 +1,142 @@ { - "metadata": { - "name": "", - "signature": "sha256:c9f8334aa7aa4a5ad1437fa5871aafa52bbc9131271d9e90e7be47d22725cc94" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Loopy IPython Integration Demo" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext loopy.ipython_ext" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Without transform code" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%fortran_kernel\n", + "\n", + "subroutine fill(out, a, n)\n", + " implicit none\n", + "\n", + " real*8 a, out(n)\n", + " integer n, i\n", + "\n", + " do i = 1, n\n", + " out(i) = a\n", + " end do\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(fill)" + ] + }, { - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Loopy IPython Integration Demo" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "%load_ext loopy.ipython_ext" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 1 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Without transform code" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "%%fortran_kernel\n", - "\n", - "subroutine fill(out, a, n)\n", - " implicit none\n", - "\n", - " real*8 a, out(n)\n", - " integer n, i\n", - "\n", - " do i = 1, n\n", - " out(i) = a\n", - " end do\n", - "end" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 2 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "print(fill)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "---------------------------------------------------------------------------\n", - "KERNEL: fill\n", - "---------------------------------------------------------------------------\n", - "ARGUMENTS:\n", - "a: ValueArg, type: float64\n", - "n: ValueArg, type: int32\n", - "out: GlobalArg, type: float64, shape: (n), dim_tags: (N0:stride:1)\n", - "---------------------------------------------------------------------------\n", - "DOMAINS:\n", - "[n] -> { [i] : i >= 0 and i <= -1 + n }\n", - "---------------------------------------------------------------------------\n", - "INAME IMPLEMENTATION TAGS:\n", - "i: None\n", - "---------------------------------------------------------------------------\n", - "INSTRUCTIONS:\n", - "[i] out[i] <- a # insn0\n", - "---------------------------------------------------------------------------\n" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## With transform code" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "split_amount = 128" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 4 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "%%transformed_fortran_kernel\n", - "\n", - "subroutine tr_fill(out, a, n)\n", - " implicit none\n", - "\n", - " real*8 a, out(n)\n", - " integer n, i\n", - "\n", - " do i = 1, n\n", - " out(i) = a\n", - " end do\n", - "end\n", - "\n", - "!$loopy begin\n", - "!\n", - "! tr_fill, = lp.parse_fortran(SOURCE)\n", - "! tr_fill = lp.split_iname(tr_fill, \"i\", split_amount,\n", - "! outer_tag=\"g.0\", inner_tag=\"l.0\")\n", - "! RESULT = [tr_fill]\n", - "!\n", - "!$loopy end" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 5 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "print(tr_fill)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "---------------------------------------------------------------------------\n", - "KERNEL: tr_fill\n", - "---------------------------------------------------------------------------\n", - "ARGUMENTS:\n", - "a: ValueArg, type: float64\n", - "n: ValueArg, type: int32\n", - "out: GlobalArg, type: float64, shape: (n), dim_tags: (N0:stride:1)\n", - "---------------------------------------------------------------------------\n", - "DOMAINS:\n", - "[n] -> { [i_outer, i_inner] : i_inner >= -128i_outer and i_inner <= -1 + n - 128i_outer and i_inner >= 0 and i_inner <= 127 }\n", - "---------------------------------------------------------------------------\n", - "INAME IMPLEMENTATION TAGS:\n", - "i_inner: l.0\n", - "i_outer: g.0\n", - "---------------------------------------------------------------------------\n", - "INSTRUCTIONS:\n", - "[i_inner,i_outer] out[i_inner + i_outer*128] <- a # insn0\n", - "---------------------------------------------------------------------------\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [], - "language": "python", - "metadata": {}, - "outputs": [] - } - ], - "metadata": {} + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## With transform code" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "split_amount = 128" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%transformed_fortran_kernel\n", + "\n", + "subroutine tr_fill(out, a, n)\n", + " implicit none\n", + "\n", + " real*8 a, out(n)\n", + " integer n, i\n", + "\n", + " do i = 1, n\n", + " out(i) = a\n", + " end do\n", + "end\n", + "\n", + "!$loopy begin\n", + "!\n", + "! tr_fill, = lp.parse_fortran(SOURCE)\n", + "! tr_fill = lp.split_iname(tr_fill, \"i\", split_amount,\n", + "! outer_tag=\"g.0\", inner_tag=\"l.0\")\n", + "! RESULT = [tr_fill]\n", + "!\n", + "!$loopy end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(tr_fill)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] } - ] -} \ No newline at end of file + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/examples/fortran/matmul.floopy b/examples/fortran/matmul.floopy index 3352449d7..8ee05643b 100644 --- a/examples/fortran/matmul.floopy +++ b/examples/fortran/matmul.floopy @@ -1,6 +1,6 @@ subroutine dgemm(m,n,l,alpha,a,b,c) implicit none - real*8 temp, a(m,l),b(l,n),c(m,n), alpha + real*8 a(m,l),b(l,n),c(m,n), alpha integer m,n,k,i,j,l do j = 1,n diff --git a/examples/fortran/tagging.floopy b/examples/fortran/tagging.floopy index 40b487528..87aacba68 100644 --- a/examples/fortran/tagging.floopy +++ b/examples/fortran/tagging.floopy @@ -1,7 +1,7 @@ subroutine fill(out, a, n) implicit none - real*8 a, out(n) + real_type a, out(n) integer n, i !$loopy begin tagged: init @@ -9,17 +9,28 @@ subroutine fill(out, a, n) out(i) = a end do !$loopy end tagged: init + +!$loopy begin tagged: mult do i = 1, n - out(i) = out(i) * 2 + out(i) = out(i) * factor end do +!$loopy end tagged: mult end !$loopy begin +! +! SOURCE = lp.c_preprocess(SOURCE, [ +! "factor 4.0", +! "real_type real*8", +! ]) ! fill, = lp.parse_fortran(SOURCE, FILENAME) +! fill = lp.add_barrier(fill, "tag:init", "tag:mult", "gb1") ! fill = lp.split_iname(fill, "i", 128, ! outer_tag="g.0", inner_tag="l.0") ! fill = lp.split_iname(fill, "i_1", 128, ! outer_tag="g.0", inner_tag="l.0") ! RESULT = [fill] +! !$loopy end + ! vim:filetype=floopy diff --git a/examples/fortran/volumeKernelSimple.floopy b/examples/fortran/volumeKernelSimple.floopy deleted file mode 100644 index afc3321b8..000000000 --- a/examples/fortran/volumeKernelSimple.floopy +++ /dev/null @@ -1,38 +0,0 @@ -subroutine volumeKernel(elements, Nfields, Ngeo, Ndim, Dop, geo, Q, rhsQ ) - - implicit none - - integer elements, Nfields, Ngeo, Ndim - - real*4 Dop(Nq,Nq) - real*4 Q(Nq,Nq,Nq,Nfields,elements) - real*4 geo(Nq,Nq,Nq,Ngeo,elements) - real*4 rhsQ(Nq,Nq,Nq,Nfields,elements) - - integer e,i,j,k,d,n,cnt - - real*4 u,v,w,p, dFdr, dFds, dFdt, divF - real*4 F(Nq,Ndim) - - - do e=1,elements - do i=1,Nq - - F(i,1) = 5 - F(i,2) = 7 - - end do - - end do - -end subroutine volumeKernel - -!$loopy begin -! -! volumeKernel, = lp.parse_fortran(SOURCE, FILENAME) -! volumeKernel = lp.fix_parameters(volumeKernel, -! Nq=5, Ndim=3) -! volumeKernel = lp.tag_inames(volumeKernel, dict(i="l.0")) -! RESULT = [volumeKernel] -! -!$loopy end diff --git a/loopy/ipython_ext.py b/loopy/ipython_ext.py index 12fd03542..ec1b10f1f 100644 --- a/loopy/ipython_ext.py +++ b/loopy/ipython_ext.py @@ -9,7 +9,7 @@ import loopy as lp class LoopyMagics(Magics): @cell_magic def fortran_kernel(self, line, cell): - result = lp.parse_fortran(cell.encode()) + result = lp.parse_fortran(cell) for knl in result: self.shell.user_ns[knl.name] = knl @@ -17,7 +17,7 @@ class LoopyMagics(Magics): @cell_magic def transformed_fortran_kernel(self, line, cell): result = lp.parse_transformed_fortran( - cell.encode(), + cell, transform_code_context=self.shell.user_ns) for knl in result: -- GitLab From 0f39d4dcb4745085fabcc1ee5962a735702beb2e Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Mon, 12 Feb 2018 13:19:52 -0600 Subject: [PATCH 07/11] Run ipynb and floopy examples --- build-py-project-and-run-examples.sh | 39 +++++++++++++++++++++------- 1 file changed, 30 insertions(+), 9 deletions(-) diff --git a/build-py-project-and-run-examples.sh b/build-py-project-and-run-examples.sh index a149e883f..18fe6124c 100644 --- a/build-py-project-and-run-examples.sh +++ b/build-py-project-and-run-examples.sh @@ -5,12 +5,33 @@ set -e curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project.sh source build-py-project.sh -cd examples -for i in $(find . -name '*.py' -print ); do - echo "-----------------------------------------------------------------------" - echo "RUNNING $i" - echo "-----------------------------------------------------------------------" - dn=$(dirname "$i") - bn=$(basename "$i") - (cd $dn; ${PY_EXE} "$bn") -done +function run_examples() +{ + PATTERN=$1 + CMDLINE=$2 + for i in $(find examples -name "$PATTERN" -print ); do + echo "-----------------------------------------------------------------------" + echo "RUNNING $i" + echo "-----------------------------------------------------------------------" + dn=$(dirname "$i") + bn=$(basename "$i") + (cd $dn; $CMDLINE "$bn") + done +end + +function run_py_examples() +{ + run_examples "*.py" ${PY_EXE} +end +function run_ipynb_examples() +{ + run_examples "*.ipynb" "${PY_EXE} -m nbconvert --execute" +end +function run_floopy_examples() +{ + run_examples "*.floopy" "${PY_EXE} -m loopy" +end + +run_py_examples +run_ipynb_examples +run_floopy_examples -- GitLab From ff997defafa6213c8337b664e84f480879359bea Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Mon, 12 Feb 2018 13:59:00 -0600 Subject: [PATCH 08/11] Fix runner script --- build-py-project-and-run-examples.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-py-project-and-run-examples.sh b/build-py-project-and-run-examples.sh index 18fe6124c..b645afce4 100644 --- a/build-py-project-and-run-examples.sh +++ b/build-py-project-and-run-examples.sh @@ -17,7 +17,7 @@ function run_examples() bn=$(basename "$i") (cd $dn; $CMDLINE "$bn") done -end +} function run_py_examples() { -- GitLab From 8deb7641bdbd011c57b355741f2dbeb00141b79f Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Mon, 12 Feb 2018 14:26:02 -0600 Subject: [PATCH 09/11] Fix example runner script --- build-py-project-and-run-examples.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build-py-project-and-run-examples.sh b/build-py-project-and-run-examples.sh index b645afce4..e51a86d20 100644 --- a/build-py-project-and-run-examples.sh +++ b/build-py-project-and-run-examples.sh @@ -15,22 +15,22 @@ function run_examples() echo "-----------------------------------------------------------------------" dn=$(dirname "$i") bn=$(basename "$i") - (cd $dn; $CMDLINE "$bn") + (cd $dn; echo $CMDLINE "$bn"; $CMDLINE "$bn") done } function run_py_examples() { run_examples "*.py" ${PY_EXE} -end +} function run_ipynb_examples() { run_examples "*.ipynb" "${PY_EXE} -m nbconvert --execute" -end +} function run_floopy_examples() { run_examples "*.floopy" "${PY_EXE} -m loopy" -end +} run_py_examples run_ipynb_examples -- GitLab From 5b9cf65fd80b9aca38f8419cc953ded8309cc471 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Mon, 12 Feb 2018 14:36:28 -0600 Subject: [PATCH 10/11] Install nbconvert for examples run --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7e5bce793..2bcf279ba 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -120,7 +120,7 @@ Python 3.6 POCL Examples: script: - export PY_EXE=python3.6 - export PYOPENCL_TEST=portable - - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib" + - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib nbconvert" - ". ./build-py-project-and-run-examples.sh" tags: - python3.6 -- GitLab From 3c9fe95d5a5f316a9f62e2db7e3b0436b24fed5b Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Mon, 12 Feb 2018 14:48:50 -0600 Subject: [PATCH 11/11] Install jupyter for examples run --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2bcf279ba..9f68c0d89 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -120,7 +120,7 @@ Python 3.6 POCL Examples: script: - export PY_EXE=python3.6 - export PYOPENCL_TEST=portable - - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib nbconvert" + - export EXTRA_INSTALL="numpy mako pyvisfile matplotlib jupyter nbconvert" - ". ./build-py-project-and-run-examples.sh" tags: - python3.6 -- GitLab