{"id":154,"date":"2019-05-05T04:02:48","date_gmt":"2019-05-05T04:02:48","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/?p=154"},"modified":"2019-05-05T04:02:48","modified_gmt":"2019-05-05T04:02:48","slug":"weekly-status-report-11","status":"publish","type":"post","link":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/2019\/05\/05\/weekly-status-report-11\/","title":{"rendered":"Weekly Status Report #11"},"content":{"rendered":"<p style=\"text-align: center\"><strong>Team Status Report<\/strong><\/p>\n<p><u>UPDATES<\/u><\/p>\n<p>This week, we had a presentation! We&#8217;ve posted <a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-content\/uploads\/sites\/59\/2019\/05\/Final-Presentation.pdf\">the slides<\/a>\u00a0from that, as well <a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-content\/uploads\/sites\/59\/2019\/05\/poster.pdf\">the poster<\/a>\u00a0for our demo, under media.<\/p>\n<p><span style=\"text-decoration: underline\">RISKS<\/span><\/p>\n<p>We have a viable demo currently. We have some improvements that we&#8217;d like to make in terms of processing speed, but our current demo constitutes our minimum viable project.<\/p>\n<p><span style=\"text-decoration: underline\">DESIGN CHANGES<\/span><\/p>\n<p>The DMA solution from last week was successful, so we have incorporated that into our project. The DMA engine transfers pixel data to the BRAM, then transfers the resulting energies back to the DRAM when the computation is complete.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center\"><strong>Maxwell Johnson<\/strong><\/p>\n<p><em>Personal work and Progress:<\/em><\/p>\n<p>I spent most of this week debugging the DMA solution.\u00a0Now that the system works, we can officially say that DMA is correct and faster than the alternative. For a 3.7 second video, the energy computation time decreased from 144s to 11s. These are the newest timing data I&#8217;ve collected:<\/p>\n<ul>\n<li>RX Time: 10.432682 s<\/li>\n<li>Total compute time: 81.239788 s\n<ul>\n<li>Total finding seams time: 65.049371 s\n<ul>\n<li>Min Cut Time (full frame): 62.142221 s\n<ul>\n<li>Sift Time: 61.899109 s<\/li>\n<li>Search Time: 0.241102 s<\/li>\n<\/ul>\n<\/li>\n<li>Incr Cut Time (partial frame): 2.907150 s<\/li>\n<\/ul>\n<\/li>\n<li>Total time deleting seams: 5.033181 s<\/li>\n<li>Total energy map time (incl. DMA): 10.929733 s<\/li>\n<\/ul>\n<\/li>\n<li>TX Time: 8.325749 s<\/li>\n<\/ul>\n<p>The bottleneck is finding the min cut of every frame. Because this is only used to determine the radix frame and then to make the cut on the radix frame, this is not a task that deserves to take 75% of our compute time. Today, I experimented with other techniques for choosing a radix frame. Choosing a random frame creates a video with similar, though slightly worse, quality. Once Riki completes the script to analyze video quality using a quantitative energy function, we can decide on what the proper tradeoff is between processing time and output quality.<\/p>\n<p><em>Deliverables<\/em>:<\/p>\n<p>Tomorrow, we&#8217;re all planning to work on some validation and optimization. My main goal is to successfully overlap the computation done by the system on chip with the DMA. Currently, the system waits for the transfer to complete before continuing to process pixels, which is wasted opportunity for computation. Following the demo, our deliverable will be the paper.<\/p>\n<p style=\"text-align: center\"><strong>John Zhang<\/strong><\/p>\n<p><em>Personal Work<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><em>Progress<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><em>Deliverables<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center\"><strong>Riki Khorana<\/strong><\/p>\n<p><em>Personal Work and\u00a0<\/em><em>Progress<\/em><\/p>\n<p>&#8211; Worked on the presentation slides<br \/>\n&#8211; Worked especially on summarizing and clarifying algorithm<br \/>\n&#8211; Tried to recreate a lost progress video,\u00a0 but failed<br \/>\n&#8211; Worked on optimization by threading seam finding on Vivado SDK<\/p>\n<p><em>Deliverables<\/em><\/p>\n<p>&#8211; Demo this Monday &#8211; work on further optimization<br \/>\n&#8211; Final report coming up soon<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Team Status Report UPDATES This week, we had a presentation! We&#8217;ve posted the slides\u00a0from that, as well the poster\u00a0for our demo, under media. RISKS We&hellip;<\/p>\n","protected":false},"author":177,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/posts\/154"}],"collection":[{"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/users\/177"}],"replies":[{"embeddable":true,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/comments?post=154"}],"version-history":[{"count":7,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/posts\/154\/revisions"}],"predecessor-version":[{"id":161,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/posts\/154\/revisions\/161"}],"wp:attachment":[{"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/media?parent=154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/categories?post=154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/course.ece.cmu.edu\/~ece500\/projects\/s19-teamd9\/wp-json\/wp\/v2\/tags?post=154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}