|
Message-Id: <1427339523.8364.0@smtp.gmail.com> Date: Thu, 26 Mar 2015 13:12:03 +1000 From: Roman Titov <titovroman@...il.com> To: "musl@...ts.openwall.com" <musl@...ts.openwall.com> Subject: GSoC 2015. Porting musl libc to RISC-V project. Proposal help and feedback. Hello, musl. At the moment I'm working on pre-final form of my proposal and I need some help here. I defined 3 milestones for the project: * Milestone #1 (MANDATORY): Complete musl-libc port for riscv-linux, targeting RV32G and RV64G ISAs. * Milestone #2 (MANDATORY): *Analysis* and/or testing of potential optimization candidates. What, why and how could be further optimized and which perfomance increase expected. * Milestone #3 (OPTIONAL): Implementation (partial or full) of *found* optimizations with constant functional and regression *testing*. I need help with exact criterion definitions for milestone #1. "Complete musl-libc port..." is nothing. We can't rate level of success or failure here, as no obligations given and so, this is not a good proposal milestone. *** So, here are my suggestions: Functional criterion: riscv-musl (lets call it so) should pass all libc-test [http://wiki.musl-libc.org/wiki/Libc-Test] tests, except tests for: * optional features that are not implemented in musl yet (e.g. posix/XSI, mentioned at libc-test musl-wiki page above) * features, that could not be implemented, because of ISA limitations * features, that could not be implemented, because of riscv-toolkit limitations (e.g. unimplemented riscv-gcc or riscv-linux feature/API or unstable riscv-gcc or riscv-linux API/ABI) Of course reasoned explanation of "why particular feature was not implemented" should (and would) be granted. Perfomance criterion: riscv-musl should be tested with libc-bench [http://www.etalabs.net/libc-bench.html][http://git.musl-libc.org/cgit/libc-bench/] benchmark and should not show any significant regression compared to existing riscv-musl benchmarking results [http://www.etalabs.net/compare_libcs.html] for other platforms. (Right now I still have no better perfomance criterion and no better definition of "significant regression" than "intuitive" one. Generally, my idea is to compare riscv-musl libc-bench results with existing musl implementations and with existing riscv-glibc. riscv-musl and musl results should correlate, if any riscv-glibc results is 2 times better - investigate.) *** Any feedback is highly appreciated. Is this milestones *ok* and *enough for the job*? Do you *agree* with them? (probably not so significant to musl, as for lowRISC, which is actual project "owner") Are my criterions *ok*? Do you *agree* with them? *Any* additions, deletions, corrections, advices, etc. "Full" version of proposal would be in a few hours. Regards, Roman Titov
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.