Boost logo

Ublas :

From: Cem Bassoy (cem.bassoy_at_[hidden])
Date: 2020-03-20 15:18:23


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]
>