Boost logo

Ublas :

From: Aniket Chowdhury (8.aniket.chowdhury_at_[hidden])
Date: 2020-03-22 17:40:53


I honestly think the MetaClass feature would really clean up all the uBlas
code. But, it will be a while before we see it in GCC releases. Modules as
well I think.

On Fri, 20 Mar 2020, 21:13 Steven Varga via ublas, <ublas_at_[hidden]>
wrote:

> Hi Everyone,
> similarly to Riccardo I am a consumer to ublas; also the author of H5CPP
> <http://isc19.h5cpp.org/#/> a scalable non-intrusive persistence for
> linear algebra support, which includes UBLAS
> <http://h5cpp.org/ublas_8cpp-example.html>. I am excited about the
> development and wondering where is the best to follow the development:
> https://github.com/boostorg/ublas ?
>
> sorry for the noise:
> steven
>
> On Fri, Mar 20, 2020 at 11:19 AM Cem Bassoy via ublas <
> ublas_at_[hidden]> wrote:
>
>> Riccardo,
>>
>> thanks. I participated in the SG14 linear algebra calls and I think that
>> the proposal is very valuable. If the proposal makes it into the standard
>> IMHO we should integrate it into ublas and extend the current tensor
>> concept.
>>
>> In any case, we need to redesign and make the implementation more
>> readable anyways. For that reason
>>
>> - we started the tensor project in 2018 which has a cleaner interface (
>> wiki <https://github.com/boostorg/ublas/wiki/Tensor>) .
>> - we had two great gsoc projects in 2019, one provides a more generic
>> tensor template and the other enhancing the built-in expression templates
>> using boost::yap (wiki <https://github.com/BoostGSoC19/tensor/wiki>)
>> - in gsoc 2020 we will hopefully have an experimental version of matrix
>> and vector with a cleaner interface and implementation.
>>
>> Thanks again, we need such input!
>>
>> CB
>>
>>
>>
>> Am Fr., 20. März 2020 um 15:54 Uhr schrieb Riccardo Rossi via ublas <
>> ublas_at_[hidden]>:
>>
>>> Dear All,
>>>
>>> i am just a user, however i want to point out that there is some
>>> standardization effort aiming at c++23 (or 26).
>>>
>>> If you eventually go for a redesign (and IMHO ublas has a need of it), i
>>> really think it would make sense to take a look at
>>>
>>> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1385r5.pdf
>>>
>>> sorry for the noise
>>>
>>> bests
>>> Riccardo
>>>
>>>
>>>
>>>
>>> On Fri, Mar 20, 2020 at 3:08 PM Aniket Chowdhury via ublas <
>>> ublas_at_[hidden]> wrote:
>>>
>>>> Oh okay. GCC 10 is supposed to have the support for Ranges. The beta
>>>> version supports Ranges and os going to get released in April. But, I guess
>>>> we can avoid that if they don't. Thanks.
>>>>
>>>> On Fri, 20 Mar 2020, 19:35 Cem Bassoy via ublas, <ublas_at_[hidden]>
>>>> wrote:
>>>>
>>>>> Hello Aniket,
>>>>>
>>>>> I cannot tell you which direction is the best for you. However, I
>>>>> recommend a topic that you are really interested in and that you want to
>>>>> continue even after GSOC.
>>>>>
>>>>> Clang and GCC still do not officially support Ranges - so I would
>>>>> leave that out (https://en.cppreference.com/w/cpp/compiler_support).
>>>>> Right now we should postpone the discussion of concepts for the tensor
>>>>> type.
>>>>>
>>>>> Best,
>>>>> CB
>>>>>
>>>>> Am Fr., 20. März 2020 um 13:54 Uhr schrieb Aniket Chowdhury via ublas <
>>>>> ublas_at_[hidden]>:
>>>>>
>>>>>> Hey Cem.
>>>>>> I went through the draft proposal and had some questions.
>>>>>>
>>>>>> Which direction do you think I should pursue? I am more inclined
>>>>>> towards refactoring the enitre data_frame because if I believe correctly
>>>>>> uBlas is moving towards C++20. Should I stick with ETs or can I use Ranges
>>>>>> and Concepts?
>>>>>>
>>>>>> I was thinking to stick to standard C++20 Ranges only instead of Eric
>>>>>> Neibler's One Ranges v3 library considering std to be more relevant.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, 18 Mar 2020, 23:49 Aniket Chowdhury, <
>>>>>> 8.aniket.chowdhury_at_[hidden]> wrote:
>>>>>>
>>>>>>> Hey Cem.
>>>>>>> Thanks for replying. Will do the needful and get back to you.
>>>>>>> I understand that the proposal could do with a few more code
>>>>>>> examples.
>>>>>>> Thanks.
>>>>>>>
>>>>>>> On Wed, Mar 18, 2020 at 8:15 PM Cem Bassoy via ublas <
>>>>>>> ublas_at_[hidden]> wrote:
>>>>>>>
>>>>>>>> Hi Aniket,
>>>>>>>>
>>>>>>>> thanks for considering Boost/uBLAS. Your potential mentor is David.
>>>>>>>> If he does not respond, just follow the instructions on the GSoC page and
>>>>>>>> upload your proposal.
>>>>>>>>
>>>>>>>> Please note that we appreciate concrete (with code samples),
>>>>>>>> realistic (regarding time) and referring (to previous or pull requests)
>>>>>>>> proposals. Concrete examples inside the proposal will help us to understand
>>>>>>>> intention and it will demonstrate your experience and expertise.
>>>>>>>>
>>>>>>> I am pretty cobfident with the timeline that I have provided with.
>>>>>> Again, regarding code examples should I add them for both C++20 and/or ET?
>>>>>>
>>>>>>>
>>>>>>>> Additionally, I advise to read
>>>>>>>>
>>>>>>>> - previous gsoc discussions on this or on the general boost
>>>>>>>> mailing list
>>>>>>>> - former gsoc student projects and proposals
>>>>>>>>
>>>>>>>> to have a good feeling of the requirements.
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Cem
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Am Mo., 16. März 2020 um 23:15 Uhr schrieb Aniket Chowdhury via
>>>>>>>> ublas <ublas_at_[hidden]>:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>> My name is Aniket Chowdhury
>>>>>>>>> <https://github.com/aniket-chowdhury?tab=repositories> and I am
>>>>>>>>> second-year undergraduate student.
>>>>>>>>>
>>>>>>>>> I wish to implement the DataFrame library for Boost. I have made
>>>>>>>>> the project proposal and am attaching the same.
>>>>>>>>> As, this project is an expansion of the previous project
>>>>>>>>> <https://github.com/BoostGSoC19/data_frame> there are a few
>>>>>>>>> directions that I would like to work in whichever adds more to the project.
>>>>>>>>>
>>>>>>>>> 1. We could be to keep the existing code base as it is and
>>>>>>>>> implement new features on top of it.
>>>>>>>>> 2. We could try to restructure the code into *Modules*(C++20
>>>>>>>>> feature) and then implement the features.
>>>>>>>>> 3. Or, we could restructure the code without ET but rather using *C++20
>>>>>>>>> One Ranges*. This makes more sense to me as I believe that uBlas
>>>>>>>>> is being ported to C++20.
>>>>>>>>>
>>>>>>>>> The DataFrame would include the following features:
>>>>>>>>> 1. All the features already present(union, combine, join).
>>>>>>>>> 2. Read/write from *DataFrame using JSON*(boost::property_tree to
>>>>>>>>> DataFrame)
>>>>>>>>> 3. Operator support for addition, subtraction, multiplication,
>>>>>>>>> division, modulo and power, etc as well as support for comparison
>>>>>>>>> operators.
>>>>>>>>> 4. Functions to perform apply, apply_element_wise, aggregate,
>>>>>>>>> transform and expand on a given DataFrame.
>>>>>>>>> 5. Data analysis tools for standard deviation, variance, mean,
>>>>>>>>> etc.
>>>>>>>>> 6. Re-indexing methods like replace, duplicate, filter, etc.
>>>>>>>>> 7. Reshaping methods for sorting, append, pivot, etc.
>>>>>>>>>
>>>>>>>> Also, could you tell me if I am on the right track regarding the
>>>>>> free form functions that Boost is looking for?
>>>>>>
>>>>>>>
>>>>>>>>> *Full Details* of the same can be found in the *Project Proposal*.
>>>>>>>>>
>>>>>>>>> I have been in contact with David Bellot for the past week
>>>>>>>>> regarding GSoC. I have completed the first draft of the competency check
>>>>>>>>> and sent the same to him. I would love to work I am requesting him to be
>>>>>>>>> assigned as a mentor for the same.
>>>>>>>>> *PFA: *The Project Proposal
>>>>>>>>> <https://docs.google.com/document/d/1wyegbUEbpOopaQSWtFd0a_ch4QeIERKXGVX6GJSSdBo/edit?usp=sharing>(linked
>>>>>>>>> in case the attachment fails)
>>>>>>>>>
>>>>>>>> Here was the old proposal.
>>>>>>
>>>>>>>
>>>>>>>>> This is an official application for the GSoC' 20. I am open to any
>>>>>>>>> and all suggestions.
>>>>>>>>>
>>>>>>>>> Aniket Chowdhury
>>>>>>>>> _______________________________________________
>>>>>>>>> ublas mailing list
>>>>>>>>> ublas_at_[hidden]
>>>>>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>>>>>> Sent to: cem.bassoy_at_[hidden]
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> ublas mailing list
>>>>>>>> ublas_at_[hidden]
>>>>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>>>>> Sent to: 8.aniket.chowdhury_at_[hidden]
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>> ublas mailing list
>>>>>> ublas_at_[hidden]
>>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>>> Sent to: cem.bassoy_at_[hidden]
>>>>>>
>>>>> _______________________________________________
>>>>> ublas mailing list
>>>>> ublas_at_[hidden]
>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>> Sent to: 8.aniket.chowdhury_at_[hidden]
>>>>>
>>>> _______________________________________________
>>>> ublas mailing list
>>>> ublas_at_[hidden]
>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>> Sent to: rrossi_at_[hidden]
>>>>
>>>
>>>
>>> --
>>>
>>>
>>> *Riccardo Rossi*
>>>
>>> PhD, Civil Engineer
>>>
>>>
>>> member of the Kratos Team: www.cimne.com/kratos
>>>
>>> Associate Professor at Universitat Politècnica de Catalunya,
>>> BarcelonaTech (UPC)
>>>
>>> Full Research Professor at International Center for Numerical Methods in
>>> Engineering (CIMNE)
>>>
>>>
>>> C/ Gran Capità, s/n, Campus Nord UPC, Building C1, First Floor
>>>
>>> 08034 – Barcelona – Spain – www.cimne.com -
>>>
>>> T.(+34) 93 401 56 96 skype: *rougered4*
>>>
>>>
>>>
>>> <http://www.cimne.com/>
>>>
>>> <https://www.facebook.com/cimne> <http://blog.cimne.com/>
>>> <http://vimeo.com/cimne> <http://www.youtube.com/user/CIMNEvideos>
>>> <http://www.linkedin.com/company/cimne> <https://twitter.com/cimne>
>>>
>>> Les dades personals contingudes en aquest missatge són tractades amb la
>>> finalitat de mantenir el contacte professional entre CIMNE i voste. Podra
>>> exercir els drets d'accés, rectificació, cancel·lació i oposició,
>>> dirigint-se a cimne_at_cimne.upc.edu. La utilització de la seva adreça de
>>> correu electronic per part de CIMNE queda subjecte a les disposicions de la
>>> Llei 34/2002, de Serveis de la Societat de la Informació i el Comerç
>>> Electronic.
>>>
>>> Imprimiu aquest missatge, només si és estrictament necessari.
>>> <http://www.cimne.com/>
>>> _______________________________________________
>>> ublas mailing list
>>> ublas_at_[hidden]
>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>> Sent to: cem.bassoy_at_[hidden]
>>>
>> _______________________________________________
>> ublas mailing list
>> ublas_at_[hidden]
>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>> Sent to: steven.varga_at_[hidden]
>>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> https://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: 8.aniket.chowdhury_at_[hidden]
>