{"id":294,"date":"2018-05-01T18:44:29","date_gmt":"2018-05-01T18:44:29","guid":{"rendered":"http:\/\/phylanx.stellar-group.org\/?p=294"},"modified":"2018-05-02T15:28:34","modified_gmt":"2018-05-02T15:28:34","slug":"phylanx-report-april-2018","status":"publish","type":"post","link":"https:\/\/phylanx.stellar-group.org\/index.php\/2018\/05\/01\/phylanx-report-april-2018\/","title":{"rendered":"Phylanx Report: April 2018"},"content":{"rendered":"<p>The Eight month of work was focused on work in the following areas:<\/p>\n<ul>\n<li>Performance analysis and Improvement<\/li>\n<li>Trace Visualization<\/li>\n<li>Jupyter Visualization<\/li>\n<li>Python Bindings<\/li>\n<\/ul>\n<p><!--more--><\/p>\n<p>Organizational activities and results<\/p>\n<ul>\n<li>Year 2 Project Kickoff Meeting: <a href=\"http:\/\/phylanx.stellar-group.org\/index.php\/events\/phylanx-year-2-kickoff-meeting\/\" target=\"_blank\">http:\/\/phylanx.stellar-group.org\/index.php\/events\/phylanx-year-2-kickoff-meeting\/<\/a><\/li>\n<li>Weekly group-meeting, minutes:\n<ul>\n<li>April 5th: <a href=\"https:\/\/drive.google.com\/open?id=1DbIRI_WEwN3b72jDNJTReZbsP-7Hey8v\" target=\"_blank\">https:\/\/drive.google.com\/open?id=1DbIRI_WEwN3b72jDNJTReZbsP-7Hey8v<\/a><\/li>\n<li>April 12th: <a href=\"https:\/\/drive.google.com\/open?id=1tAMFs8QUnGpAnn4d7A2sDMYb1NJoafmA\" target=\"_blank\">https:\/\/drive.google.com\/open?id=1tAMFs8QUnGpAnn4d7A2sDMYb1NJoafmA<\/a><\/li>\n<li>April 26th: <a href=\"https:\/\/drive.google.com\/open?id=1k-hEAmrLNiGk4rxkl825xYomlVO9CAXX\" target=\"_blank\">https:\/\/drive.google.com\/open?id=1k-hEAmrLNiGk4rxkl825xYomlVO9CAXX<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Development activities and results<\/p>\n<ul>\n<li>Algorithms Highlighted: Logistic Regression, ALS, K-Means<\/li>\n<li>Refactoring: Enabled primitives to be loaded from separate shared libraries (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/phylanx\/pull\/345\" target=\"_blank\">#345<\/a>)\n<ul>\n<li>Reduces link time<\/li>\n<li>Moved primitives into plugins directory<\/li>\n<li>Split primitives into subdirectories<\/li>\n<\/ul>\n<\/li>\n<li>Improvements to the slicing primitive<\/li>\n<li>Performance Improvements\n<ul>\n<li>Removing unnecessary copies (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/phylanx\/commit\/b223bb9074beecc219da843745ec2e4949ca7e7d\" target=\"_blank\">#330<\/a>, <a href=\"https:\/\/github.com\/STEllAR-GROUP\/phylanx\/commit\/9270cecb388cf184544c9b2927a6b1150901e8a2\" target=\"_blank\">#346<\/a>)<\/li>\n<li>Remove unneeded threads, reduce allocations, enable more vectorization (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/phylanx\/commit\/faebddf738bf1360833008e95c69c6687e6ba2d7\" target=\"_blank\">#352<\/a>)<\/li>\n<\/ul>\n<\/li>\n<li>Working range primities (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/phylanx\/commit\/7bff527c8fe3ff09143a825234e6dbcd6f5ce903\" target=\"_blank\">#355<\/a>)<\/li>\n<li>Performance measurements of Phylanx and \u201ccompeting\u201d solutions have been completed<\/li>\n<li>APEX policy to support parcel coalescing has been resurrected, future improvements are planned<\/li>\n<li>Jupyter Integration:\n<ul>\n<li>Initial implementation of \u201cmagics\u201d in Jupyter notebook for visualization support<\/li>\n<li>Performed a formative evaluation study with Phylanx developers to assess\/improve next iteration of design<\/li>\n<\/ul>\n<\/li>\n<li>Trace Visualization\n<ul>\n<li>All tasks are now traced with GUIDs and are added to the OTF2 file<\/li>\n<li>Visualization now reads and displays new HPX parent thread dependencies collected by APEX<\/li>\n<li>Verified code works for a Phylanx LRA trace<\/li>\n<\/ul>\n<\/li>\n<li>Phylanx Front End\n<ul>\n<li>Exposed AST as a member function of the @Phylanx decorator<\/li>\n<li>Incorporating new slicing primitive into front-end<\/li>\n<li>Convert python loops into Phylanx maps\n<ul>\n<li>Uses new map and range primitives<\/li>\n<\/ul>\n<\/li>\n<li>Redirected all std::cout outputs to Python\u2019s stdout<\/li>\n<li>Improved handling of return statements in Phylanx Kernels<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Repository activity April 1st &#8211; April 30th:<\/p>\n<p><img loading=\"lazy\" class=\"alignnone wp-image-296 size-full\" src=\"http:\/\/phylanx.stellar-group.org\/wp-content\/uploads\/2018\/05\/git_statistics_04.30.18.png\" alt=\"\" width=\"757\" height=\"495\" srcset=\"https:\/\/phylanx.stellar-group.org\/wp-content\/uploads\/2018\/05\/git_statistics_04.30.18.png 757w, https:\/\/phylanx.stellar-group.org\/wp-content\/uploads\/2018\/05\/git_statistics_04.30.18-300x196.png 300w, https:\/\/phylanx.stellar-group.org\/wp-content\/uploads\/2018\/05\/git_statistics_04.30.18-535x350.png 535w, https:\/\/phylanx.stellar-group.org\/wp-content\/uploads\/2018\/05\/git_statistics_04.30.18-150x98.png 150w\" sizes=\"(max-width: 757px) 100vw, 757px\" \/><\/p>\n<p>Code statistics<\/p>\n<pre>-------------------------------------------------------------------------------\r\nLanguage \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 files \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 blank \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 comment \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 code\r\n-------------------------------------------------------------------------------\r\nC++ \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 246 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 10456 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3286 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 49597\r\nC\/C++ Header \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 171 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3219 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2336 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 13346\r\nCMake \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 80 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 705 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 602 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2785\r\nPython \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 34 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 714 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 511 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2238\r\nYAML \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 13 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 15 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 79\r\nDockerfile \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 32\r\nMarkdown \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 11 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 29\r\nINI \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 8\r\n-------------------------------------------------------------------------------\r\nSUM: \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 536 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 15120 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 6754 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 68114\r\n-------------------------------------------------------------------------------<\/pre>\n<p>Impact on other projects<\/p>\n<ul>\n<li>HighFive\n<ul>\n<li>Pull Request: fixing #106: fails to open existing file with Create flag (<a href=\"https:\/\/github.com\/BlueBrain\/HighFive\/pull\/107\" target=\"_blank\">#107<\/a>)<\/li>\n<\/ul>\n<\/li>\n<li>HPX\n<ul>\n<li>Pull Requests: Apex task wrapper memory bug (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/hpx\/pull\/3298\" target=\"_blank\">#3298<\/a>)<\/li>\n<li>Pull Requests: Support external plugins (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/hpx\/pull\/3277\" target=\"_blank\">#3277<\/a>)<\/li>\n<li>Issue: Crash with APEX when running Phylanx lra_csv with &gt; 1 thread (<a href=\"https:\/\/github.com\/STEllAR-GROUP\/hpx\/issues\/3297\" target=\"_blank\">#3297<\/a>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The Eight month of work was focused on work in the following areas: Performance analysis and Improvement Trace Visualization Jupyter Visualization Python Bindings <a class=\"continue-reading-link\" href=\"https:\/\/phylanx.stellar-group.org\/index.php\/2018\/05\/01\/phylanx-report-april-2018\/\">Continue reading<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8],"tags":[5,9],"_links":{"self":[{"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/posts\/294"}],"collection":[{"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/comments?post=294"}],"version-history":[{"count":7,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/posts\/294\/revisions"}],"predecessor-version":[{"id":302,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/posts\/294\/revisions\/302"}],"wp:attachment":[{"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/media?parent=294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/categories?post=294"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/phylanx.stellar-group.org\/index.php\/wp-json\/wp\/v2\/tags?post=294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}