Open abelsiqueira opened 1 year ago
@rgaiacs, @lrsantos11, quick update: I have created https://github.com/abelsiqueira/perprof-web as a side project to learn more about Flask, backend vs frontend, serving a site, etc. It's live on https://perprof.abelsiqueira.com, though I am not sure if I will leave it on. It is supposed to be working.
Pretty cool stuff.
I liked it. Flask seems to be very nice!
On Wed, May 24, 2023 at 1:36 PM Abel Soares Siqueira < @.***> wrote:
@rgaiacs https://github.com/rgaiacs, @lrsantos11 https://github.com/lrsantos11, quick update: I have created https://github.com/abelsiqueira/perprof-web as a side project to learn more about Flask, backend vs frontend, serving a site, etc. It's live on https://perprof.abelsiqueira.com, though I am not sure if I will leave it on. It is supposed to be working.
— Reply to this email directly, view it on GitHub https://github.com/abelsiqueira/perprof-py/issues/238#issuecomment-1561893707, or unsubscribe https://github.com/notifications/unsubscribe-auth/AATCP5TZ2QQXLSQWE4CAYMTXHZWORANCNFSM6AAAAAAWQROTXU . You are receiving this because you were mentioned.Message ID: @.***>
-- Prof. Luiz-Rafael Santos LABMAC - Laboratório de Matemática Aplicada e Computacional Departamento de Matemática Centro Tecnológico, de Ciências Exatas e Educação Universidade Federal de Santa Catarina - Campus Blumenau Blumenau/SC/Brasil @lrsantos11 Curriculum Lattes - http://lattes.cnpq.br/8148144650071227 Google Scholar - https://scholar.google.com.br/citations?user=lrsantos11
The current implementation is too complicated, with too many parts tightly coupled. Here I will give an overview - for others and for myself - and a proposed solution.
A summary:
Profiler
.Profiler
extendsPdata
.Pdata
callsparse.py
functions to parse the code.Pdata
is responsible for creating the cumulative function values.plot
function.parser_options
andprofiler_options
are obtained from the CLI arguments.BACKEND.Profiler(parser_options, profiler_options)
.Issues with this approach:
Proposal of refactoring:
SolverData
reads the data of a single solver. It does the parsing and stores the raw values.ProfileData
computes the cumulative function values from an input of SolverData.ProfileBackend
plots the data.numpy
arrays andpandas.DataFrame
s to store these values.Some things to keep in mind:
Pdata
without worrying about users losing access to the API (nobody should be using it anyway).