Just an update on the project from my ‘wish list’ Task #1 : have a lookm at opencv and how the threading backends are implemented Task #2: Get a good understanding of the HPX threading framework. Make sure you appreciate the difference between kernel level threads and lightweight HPX threads. Reading from a webcam or other device might make low level calls that need to be done on a kernel thread rather than an hpx worker/task thread. Task #3: Implement an HPX backend to replace OpenMP/TBB in openCV and test out standard opencv algorithms Task #4: make sure that the threading implementation doesn’t violate the terms of #2 and that hpc threads are not blocking in wait staes whilst polling for camera/image data Task #5: understand that HPX supports thread pools and we can create a custom thread for any opencv camera poll work so that the problems I just alluded to do not happen Task #6: Together a simple Qt demo with a GUI that displays images in a nice GUI window and overlays some image processing data etc. I have an application I wrote for monitoring wildlife in my garden that can be adapted for this - it tracks movement by doing pixel comparisons after applying bunch of filters to the webcam images - when movement is detected, it starts recording so I can see what happened whilst I was asleep etc (infra-red cameras for night vision). Task #7: Understand that Qt GUI threads can’t always be run on hpx task threads and/or tht Qt guis are not generally thread safe and we may need a special thread for GUI updates (or careful use of Qt synchronization), so a thread pool dedicated for that might/would be a good idea.
Task #0 - learn as much as you can about all of the above before gsoc starts and write a decent proposal “in your own words” that describes how you plan to do the above (and insert extra tasks because I wrote this fast and skipped lots of details). Feel free to ask questions on IRC or here - I’ll update the task list above if I think of more - and note that #1-#5 are the main essentials and #6-#7 are bonus work for anyone who makes good progress on the first tasks. JB From: Marcin Copik [mailto:[email protected]] Sent: 15 February 2018 18:02 To: Ashish Jha <[email protected]>; [email protected] Cc: Patrick Diehl <[email protected]>; Biddiscombe, John A. <[email protected]> Subject: Re: GSoC : "HPX Backend for OpenCV" Dear Ashish, cc'ing this message to the mailing list to let the other mentors and the community to chime in and propose their suggestions. The project idea gives a link to the existing implementation of parallel task processing in OpenCV. It's a good starting point since understanding how OpenCV currently handles the parallelization is necessary to propose an integration scheme for HPX. You may also want to take a look at the guide to writing a successful proposal[1]. Best regards, Marcin Copik [1] - https://github.com/STEllAR-GROUP/hpx/wiki/Hints-for-Successful-Proposals śr., 14 lut 2018 o 16:38 użytkownik Ashish Jha <[email protected]<mailto:[email protected]>> napisał: [https://api.openbracket.co/track/f8842b410f36ecfb3fc588d5bf81c7c9.gif] Respected Sir, I am Ashish Jha, 3rd-year computer science undergrad at NIT Rourkela. I have worked on OpenMP project and has recently been introduced to OpenCV. I will love to work on the project HPX Backend for OpenCV. Can you please guide me where to start? I am having exam until 27th February so I can devote up to 1 or 2 hour to the project and after that, I can devote full time on the project Attached is my CV. - - Thanking you, Ashish Kumar Jha 3rd year CSE Undergrad, National Institute of Technology, Rourkela. Contact: +91-9430682550<tel:+91%2094306%2082550> Facebook <https://www.facebook.com/amiable.ashish> | LinkedIn<https://www.linkedin.com/in/ashish-jha-6bb7b3101>
_______________________________________________ hpx-users mailing list [email protected] https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
