On Apr 3, 2014 4:45 PM, "Wookey" <[2][email protected]> wrote:
I'm involved as a Linaro Google summer of code (GSOC) admin as well as Debian GSOC mentor. (linaro is an arm linux/open source non-profit engineering organisation if you've never heard of it http://linaro.org/ who have been paying for me to do a lot of good stuff in Debian) We have one student proposing to port ghc to arm64, which is a very useful and interesting piece of work, which I'd like to see happen, but I know absolutely nothing about haskell so would need a co-mentor. (but obviously I do know about arm64/aarch64, porting in general and debian bootstrapping/crossbuilding machinery). Can anyone help me as a co-mentor in the form of 'haskell techincal advisor' First, though, the immediate need is to review the proposal and talk to the student. I can do that but I need some details on how big a job it is and some way to determine if we think the student is up to the task. I don't feel that I know enough to ask sensible questions, or judge the answers right now... I'm in a hurry on this as decisions on slots need to be made by the end of the weekend, so do please get in touch forthwith if you can help me with that (no need to commit to mentoring as well, but that would be good :-) For this project to happen it will need someone with a clue to volunteer as mentor (i.e apart from me), for us to judge the student as reasonably likely to get somewhere in 3 months (in which case we will ask for a slot), and for Linaro to then be allocated a slot (this project will be in the 'would be nice', as opposed to 'core projects' category. GSOC mentoring is very satisfying in my experience. You get to teach people about free software and the community, as well as the technical task at hand, and if you do that well they are likely to stay around and do useful stuff for years to come. The timeline is here: [3]http://www.google-melange.com/gsoc/events/google/gsoc2014 Our project ideas page, just to give you some idea of what's going on: [4]https://wiki.linaro.org/SummerOfCode2014/ProjectIdeas ghc porting comes under the "AArch64 porting" heading. Below is part of the proposal the guy sent in. You can tell me if he has any idea what he's doing or not (he originally applied to do something entirely different, but was told it was already done so suggested this instead). He appears to have a reasonable idea of what to do, and have got stuck in in the short time he had before the proposal deadline. I have no idea if this port is a realistic task for a student in 3 months. Is it? Any comments people have would be of interest, and of course if you are able to say you'll help out that would be great. How much time it takes varies enormously depending how good the student is. I've had ones that are way smarter than me and needed no help at all, and ones who needed quite a lot of handholding. ---------------- Name: Kishor Mohite Email: [6][email protected] 4) Implementation i) It is quite exciting and challenging to port the software used everyday by developers to a completely new architecture. In the initial stages I will pick the Glasgow Haskell Compiler for porting as it is not ported yet to AArch64. ii) I am currently working to get unregistered build of ghc working on Aarch64. First steps for which are compiling intermediate C (.hc) files using vanilla C. Unregistered build costs about a factor of two in performance but it is just a step to get full registered port. Full registered port gets bootstrapped with unregistered build on a new architecture. iii) I have been able to setup a cross compiler toolchain on Ubuntu (x86_64) which will be the host machine for the porting purpose. Also I have been able to get foundation model for ARMv8 working with this kernel image and this rootfs disk image, though I am not able to ssh to the foundation model from host machine. I have cross compiled some C programs on host machine and able to get them working on a foundation model. iv) I have made changes in ghc ./configure script to recognize aarch64-unknown-linux as a target platform. Script is running with x86_64 as host and build architecture and aarch64 as target architecture. configure stops with error "configure: error: building ghc-pwd failed", now looking into that issue. 5) Timeline i) Last week of April and First week of May: My end term examinations will end in third week of April after which I will be completely available for the project. I will give two weeks to study the code which is ported already by Linaro Engineers studying carefully the coding style and understanding the actual code with the help of mentor. At the same time I will read the documentation written by Linaro Engineers and get to know about detailed working of 64 bit execution state of ARMv8 as I have already worked on MIPS it will not take much time. ii) Second week of May to First week of June: From the second week I will start working on ghc, by the time I will have a complete development environment setup. First working to get unregistered build working on a new architecture which might take some time because of minor porting issues that may arise. iii) Second week of June and Third week of June: Unregistered build of ghc will be ready for AArch64 by the end of third week of June and will be completely tested for any issues in this period. iv) Last week of June: Project will be ready for submitting in mid term evaluations. v) First week of July to Second week of August: In the second phase I will work on making completely registered build for AArch64 using unregistered build for bootstrapping purpose and resolving any issues which will arise while building in this period. And if it doesn't take that long to build registerised ghc I will pick one more project, most probably gnu-smalltalk for porting to aarch64. vi) Third week of August: Required code samples will be provided to Google. ------------------------- Wookey -- Principal hats: �Linaro, Emdebian, Wookware, Balloonboard, ARM [7]http://wookware.org/ References Visible links 1. http://rrt.sc3d.org/ 2. mailto:[email protected] 3. http://www.google-melange.com/gsoc/events/google/gsoc2014 4. https://wiki.linaro.org/SummerOfCode2014/ProjectIdeas 5. https://www.google-melange.com/gsoc/proposal/review/org/google/gsoc2014/kishorm23/5629499534213120?verified=True 6. mailto:[email protected] 7. http://wookware.org/ ----- End forwarded message ----- Wookey -- Principal hats: Linaro, Emdebian, Wookware, Balloonboard, ARM http://wookware.org/ -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: https://lists.debian.org/[email protected]
