[gmx-developers] looking for co-mentor for GSoC 2020: TNG format
Oliver Beckstein
obeckste at asu.edu
Fri Mar 27 01:52:51 CET 2020
Hi Paul,
Thank you for confirming (off list) that you will be able to mentor. I updated the project description https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2020#project-6-implement-tng-support <https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2020#project-6-implement-tng-support>
This means we can now offer “Project 6: TNG Support” for GSoC.
I’ll loop you into the GSoC proposals.
Best,
Oliver
> On Mar 23, 2020, at 4:17 AM, Paul bauer <paul.bauer.q at gmail.com> wrote:
>
> Hello Oliver,
>
> I can see what I can do for mentoring, but would need to make sure I understand the guidelines from GSoC better.
>
> I think having a polished version on TNG would be quite helpful not just for core GROMACS but also for our interoperability with other packages, so this should definitely be worth my time.
> One thing that concerns me is that we usually have quite a long lag time for code contributions coming from external people or new team members, so porting the whole code to C++ might not be done in the given time span, but it should be possible to get patches at least to the point of being reviewed here.
>
> Let's see if this gets chosen in the end!
>
> Cheers
>
> Paul
>
> On 22/03/2020 23:14, Oliver Beckstein wrote:
>> Hello TNG people,
>>
>> Apologies for the delayed reply.
>>
>> My take-away from your comments on the TNG library are:
>>
>> 1. TNG has all major features defined (although a more polished API might be desirable).
>> 2. You consider the current C code in https://github.com/gromacs/tng <https://github.com/gromacs/tng> as the reference implementation
>> 3. More tests would be welcome.
>> 4. At the moment there is no-one who is really looking after the code. (At least at a cursory glance, documentation is hard to find; presumably https://github.com/gromacs/tng/blob/master/Trajectoryformatspecification.mk <https://github.com/gromacs/tng/blob/master/Trajectoryformatspecification.mk> is important as well as the JCC 2014 paper (and the 2011 one). )
>> 5. You consider porting the existing C code to C++ would be the next important step so that at least Gromacs itself can move towards TNG adoption.
>>
>> We can advertise the project as
>>
>> 1. Port existing TNG C code to C++
>> 2. Write the API documentation (doxygen strings + minimal example for how to use the library)
>> 3. Stretch goal: Create a Python wrapper (based on https://github.com/MDAnalysis/pytng <https://github.com/MDAnalysis/pytng> or other approaches).
>>
>> Questions:
>>
>> Is this a realistic plan for a student with no previous experience with the specifics but knowledge of C/C++ & python, for May 18 – Aug 10 (~3 months)?
>>
>> @Paul: would you be able to co-mentor a student (primarily 1 and 2)?
>>
>> @Magnus: would you be available for consultations – basically, replying to emails on whatever mailing list/issue tracker the conversation will happen?
>>
>> Would you think that this would be worth everyone’s time? Mentors will be involved in choosing students so you won’t get someone that you don’t feel is suitable.
>>
>> There’s no guarantee that this project will be chosen but we would see by March 31 (application deadline).
>>
>>
>> Oliver
>>
>>
>>
>>
>>
>>> On Mar 19, 2020, at 1:16 AM, Paul bauer <paul.bauer.q at gmail.com <mailto:paul.bauer.q at gmail.com>> wrote:
>>>
>>> Hello,
>>>
>>> I concur with Magnus that moving the TNG codebase to C++ would be a major win and make integration in e.g. GROMACS even better.
>>> I can also see that I help with mentoring from the GROMACS side, to help with providing a smooth integration process.
>>>
>>> Cheers
>>>
>>> Paul
>>>
>>> On 19/03/2020 09:13, Magnus Lundborg wrote:
>>>> Hi,
>>>>
>>>> As the main developer of the TNG API I'm happy to hear about this initiative as we needed more hands already from the beginning, and no-one has taken the development over since I moved on to other things.
>>>>
>>>> On 2020-03-18 21:17, David van der Spoel wrote:
>>>>> Den 2020-03-18 kl. 19:20, skrev Oliver Beckstein:
>>>>>> Hello Gromacs Developers,
>>>>>>
>>>>>> As part of Google Summer of Code 2020 with MDAnalysis <https://www.mdanalysis.org/2020/02/22/gsoc2020/#google-summer-of-code-2020 <https://www.mdanalysis.org/2020/02/22/gsoc2020/#google-summer-of-code-2020>> we proposed a project to work on the TNG format. Originally the plan was to just make sure that MDAnalysis can work with TNG but after a chat with Erik at BPS (and in the spirit of the last MolSSI interoperability workshop) we thought that it would be more useful to take a step back and possibly work towards finalizing the TNG format <https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2020#project-6-implement-tng-support <https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2020#project-6-implement-tng-support>> with the goal to make it usable in any MD analysis code (including MDAnalysis). The preliminary objectives would be:
>>>>>
>>>>> Great initiative!
>>>>>
>>>>>>
>>>>>> 1. Fully define the API and capabilities of TNG.
>>>>> The existing functionality or would you add stuff that has been disccussed for a long time like energies and other data blocks?
>>>> As far as I know the API should be complete as it is, but perhaps not as polished as would be nice. Adding energies and other data blocks are more a matter of adding it in the software packages using the library. The only exception is that data block IDs are kept as a central repository in the library. But this is just to keep track of them and to avoid ID conflicts. As far as I remember, there is in principle nothing that prevents anyone from writing anything in TNG.
>>>>>
>>>>>> 2. Write documentation.
>>>>>> 3. Write a reference library implementation (C or C++).
>>>>> How would that be different from the existing implementation?
>>>> Yes, what is the difference between the existing API and library (in C)? There are plans to make it more C++ compliant. That could be a good project. A full rewrite to proper C++ would be even better. One problem since early on was that the API and ABI was promised to be fully backwards compatible. That makes a redesign harder and explains some of the "late add-ons".
>>>>>
>>>>>> 4. Write tests.
>>>> There are some functionality tests in the TNG library, but more extensive unit tests would of course be good.
>>>>>> 5. Bonus: Write Python bindings (see start in our pytng
>>>>>> <https://github.com/MDAnalysis/pytng <https://github.com/MDAnalysis/pytng>> library) and integrate with
>>>>>> MDAnalysis
>>>>>
>>>>>>
>>>>>> This project outline is not set in stone and we would be more than happy to adapt it according to your expert input.
>>>>>>
>>>>>> We have at least one promising candidate student who is interested in working on this project during 10 weeks this summer.
>>>>>>
>>>>>> We would need at least one knowledgable co-mentor from the GROMACS developer community who could commit to mentoring. See https://google.github.io/gsocguides/mentor/ <https://google.github.io/gsocguides/mentor/> what is expected of mentors. In short, you would be involved in selecting students, communicating with the student (primarily using mailing lists and issue trackers) on a near-daily basis, help with keeping the project on track, and evaluating the student for GSoC (midterm and final evaluation at pass/fail level). About 5h/week is a realistic minimum.
>>>> I could hopefully clarify some things in the beginning of the project and possible during as well, but I'm afraid I cannot promise any regular co-mentoring.
>>>>>>
>>>>>> We completely understand that in the current global crisis, you might have more urgent things to do. But if you think that you could be a co-mentor for this project, please let us know soon because students have to write their applications; their deadline is March 31 but they can submit applications now and unless we have a GROMACS co-mentor we will not be offering the TNG project so students.
>>>>>>
>>>>>> Thank you!
>>>>>>
>>>>>> Oliver (for the MDAnalysis GSoC 2020 Mentors)
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Oliver Beckstein, DPhil * oliver.beckstein at asu.edu <mailto:oliver.beckstein at asu.edu> <mailto:oliver.beckstein at asu.edu <mailto:oliver.beckstein at asu.edu>>
>>>>>> https://becksteinlab.physics.asu.edu/ <https://becksteinlab.physics.asu.edu/>
>>>>>>
>>>>>> Associate Professor of Physics
>>>>>> Arizona State University
>>>>>> Center for Biological Physics and Department of Physics
>>>>>> Tempe, AZ 85287-1504
>>>>>> USA
>>>>>>
>>>>>> Office: PSF 348
>>>>>> Phone: +1 (480) 727-9765
>>>>>> FAX: +1 (480) 965-4669
>>>>>>
>>>>>> Department of Physics: https://physics.asu.edu/content/oliver-beckstein <https://physics.asu.edu/content/oliver-beckstein>
>>>>>> Center for Biological Physics: https://cbp.asu.edu/content/oliver-beckstein <https://cbp.asu.edu/content/oliver-beckstein>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> --
>>> Paul Bauer, PhD
>>> GROMACS Development Manager
>>> KTH Stockholm, SciLifeLab
>>> 0046737308594
>>>
>>> --
>>> Gromacs Developers mailing list
>>>
>>> * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List <http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List> before posting!
>>>
>>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists <http://www.gromacs.org/Support/Mailing_Lists>
>>>
>>> * For (un)subscribe requests visit
>>> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers <https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers> or send a mail to gmx-developers-request at gromacs.org <mailto:gmx-developers-request at gromacs.org>.
>>
>>
>> --
>> Oliver Beckstein, DPhil * oliver.beckstein at asu.edu <mailto:oliver.beckstein at asu.edu>
>> https://becksteinlab.physics.asu.edu/ <https://becksteinlab.physics.asu.edu/>
>>
>> Associate Professor of Physics
>> Arizona State University
>> Center for Biological Physics and Department of Physics
>> Tempe, AZ 85287-1504
>> USA
>>
>> Department of Physics: https://physics.asu.edu/content/oliver-beckstein <https://physics.asu.edu/content/oliver-beckstein>
>> Center for Biological Physics: https://cbp.asu.edu/content/oliver-beckstein <https://cbp.asu.edu/content/oliver-beckstein>
>>
>
> --
> Paul Bauer, PhD
> GROMACS Development Manager
> KTH Stockholm, SciLifeLab
> 0046737308594
> --
> Gromacs Developers mailing list
>
> * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List before posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers or send a mail to gmx-developers-request at gromacs.org.
--
Oliver Beckstein, DPhil * oliver.beckstein at asu.edu
https://becksteinlab.physics.asu.edu/
Associate Professor of Physics
Arizona State University
Center for Biological Physics and Department of Physics
Tempe, AZ 85287-1504
USA
Department of Physics: https://physics.asu.edu/content/oliver-beckstein
Center for Biological Physics: https://cbp.asu.edu/content/oliver-beckstein
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20200327/5e34e31d/attachment.html>
More information about the gromacs.org_gmx-developers
mailing list