[julia-users] Re: Google Summer of Code 2016
Hi, Mike, This is Hyun, I'm a student in Korea, and I have a plan to apply this Julia GSoC program. May I ask you a question? You mentioned "Finding a good mentor for your project will be a big help for most applications, and showing mentors your enthusiasm is a great way to get them on board.", Can you tell me how to find a mentor for my project? Sincerely, Hyun. 2016년 3월 9일 수요일 오후 10시 53분 41초 UTC+9, Mike Innes 님의 말: > > Hey All, > > As you may have heard by now, the Julia language is proud to be part of > Google > Summer of Code > <https://summerofcode.withgoogle.com/organizations/6453977159827456/> > 2016! We’re inviting students to get paid to work on a Julia-related > project of their choice during their summer break. I’ll explain more about > how everyone can get involved below, and any questions can be directed to > this group or to the aptly-named julia-s...@googlegroups.com > . > > *Students*: Start by thinking about the kind of projects you’d like to > work on! As a starting point, there are a bunch of interesting projects on > our ideas page <http://julialang.org/soc/ideas-page>. At this stage, it’s > also a good idea to start getting involved with the community around your > area of interest by opening issues, sending PRs and speaking to developers. > Finding a good mentor for your project will be a big help for most > applications, and showing mentors your enthusiasm is a great way to get > them on board. Feel free to start discussions on this group, although note > that it’s easier for us to answer broad questions about the process than to > give specific technical feedback. > > *Everyone else*: If you happen to know any students, please let them > know! We’d also like to encourage people to step up as mentors, so if > you’re interested then please contact us at the above julia-soc group and > let us know what areas you’d like to help with. Please also feel free to > give technical feedback on proposals that come up on this list. > > Cheers, > Mike >
[julia-users] Hello, How do I find my mentor for GSoC2016?
Hello, my name is Yonghyun, I'm working towards on a master's degree in Computer Science. I am interested in the idea "Native Julia implementations of massively parallel dense linear algebra routines" and "Native Julia implementations of massively parallel sparse linear algebra routines". My Proposal is like that I will optimize linear algebra operation by several kind of parallelism such as instruction-level, data, pipelining, task parallelism. In order to introducing all of these parallelizations and maximizing the performance, I want to create new data type I named it LazyEvalMat. Using lazy evaluation remove unnecessary computation and It can improve the performance. However, I don't know it is appropriate topic. What I explained above is my big picture that I want to achieve in the future. I think that 3 months is not too long to finish them. I tried creating my own matrix power function using Python before, I used data parallelism(tiling), task parallelism(using topology) and pipelining parallelism(using lowered dependency). May I kindly ask you what is a proper idea for me, whether the topic that I am interested in is suitable for me and what should I do? And How do I find my mentors? Best, Yonghyun.
[julia-users] Re: Hello, How do I find my mentor for GSoC2016?
Thank you for your interest and advice. How about focusing on "implementations of massively parallel dense linear algebra routines" and "implementing native Julia algorithms involving efficient, cache-conscious matrix operations on tiled matrices."? Because I interested cache-conscious parallel algorithm using tiled matrices. Can you give me advice to specify the proposal? I'm sorry, the code I show you might be messy. It's because there are many kind of parallelism put together. and I think I can not finish all of implementation there until this Friday(Because it should make a dependency graph, create parallel queue line using it and make sub-matrices and control them to be operated in pipelining parallelism using lowered dependency and so on). How about I'll give you parallel matrix-matrix multiplication implementation in Julia using tiled matrix, I think I can do it within one or two days. P.S. I'm sorry for my late reply, I forgot checking google-groups. Best, Yonghyun. 2016년 3월 19일 토요일 오전 11시 13분 1초 UTC+9, Jiahao Chen 님의 말: > > > I tried creating my own matrix power function using Python before, I > used data parallelism(tiling), task parallelism(using topology) and > pipelining parallelism(using lowered dependency). > > As you say, attacking all levels of parallelism is very ambitious. > However, I think working on just one of these parallelism structures would > make for a good summer project. I would recommend you to pick one of these > approaches and apply it to a widely used computation such as matrix-matrix > multiplication. > > I had a look at your Python implementation > > https://github.com/usefulhyun/parallel_mmm/blob/master/prllmpow/prllmpow.py > > and it is quite hard to understand. If you can translate the essential > parts into Julia and show how you can use features like Julia types and > overloading of Julia's generic functions like * to make the code readable > yet efficient, then I think we can make a good case for your participation > in the Google Summer of Code. Without a Julia code sample to evaluate, it > is quite difficult to make a strong case for participation. >
[julia-users] Re: Hello, How do I find my mentor for GSoC2016?
Thank you for your advice. As I told you yesterday, here is my Julia source code for tiling parallel matrix-matrix multiplication. https://github.com/usefulhyun/mmm-julia/blob/master/src/mmm_tiling_parallel.jl It is quite rough version, because I made it hastily, but I checked it work correctly. I remember you are interested in mentoring students who want to work in linear algebra, is it including parallel algebra routine? Following your advice to pick one parallelism (using tiling, data parallelism), I want to work in tuning the performance of typical algorithm such as the singular value decomposition or linear solve and so on. Can you tell me what is the best choice I will be able to focus on? Specifically, What do you think which linear algebra algorithm would be suitable for cache-conscious data parallelism? Sincerely, Yonghyun. 2016년 3월 19일 토요일 오전 12시 32분 54초 UTC+9, Hyun 님의 말: > > Hello, my name is Yonghyun, I'm working towards on a master's degree in > Computer Science. > > I am interested in the idea "Native Julia implementations of massively > parallel dense linear algebra routines" and "Native Julia implementations > of massively parallel sparse linear algebra routines". > > My Proposal is like that I will optimize linear algebra operation by > several kind of parallelism such as instruction-level, data, pipelining, > task parallelism. In order to introducing all of these parallelizations and > maximizing the performance, I want to create new data type I named it > LazyEvalMat. Using lazy evaluation remove unnecessary computation and It > can improve the performance. > > However, I don't know it is appropriate topic. What I explained above is > my big picture that I want to achieve in the future. I think that 3 months > is not too long to finish them. > I tried creating my own matrix power function using Python before, I used > data parallelism(tiling), task parallelism(using topology) and pipelining > parallelism(using lowered dependency). > > May I kindly ask you what is a proper idea for me, whether the topic that > I am interested in is suitable for me and what should I do? > And How do I find my mentors? > > Best, > Yonghyun. >