[julia-users] Re: Google Summer of Code 2016

2016-03-15 Thread Hyun
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?

2016-03-19 Thread 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.


[julia-users] Re: Hello, How do I find my mentor for GSoC2016?

2016-03-21 Thread Hyun
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?

2016-03-22 Thread Hyun
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.
>