gnuastro-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[task #16510] makeplugin_text_prev_batch_in_list optimization


From: Mohammad Akhlaghi
Subject: [task #16510] makeplugin_text_prev_batch_in_list optimization
Date: Fri, 1 Mar 2024 07:23:34 -0500 (EST)

URL:
  <https://savannah.gnu.org/task/?16510>

                 Summary: makeplugin_text_prev_batch_in_list optimization
                   Group: GNU Astronomy Utilities
               Submitter: makhlaghi
               Submitted: Fri 01 Mar 2024 01:23:34 PM CET
         Should Start On: Fri 01 Mar 2024 12:00:00 AM CET
   Should be Finished on: Fri 01 Mar 2024 12:00:00 AM CET
                Category: Makefile extensions
                Priority: 5 - Normal
              Item Group: Enhancement
                  Status: None
                 Privacy: Public
             Assigned to: None
        Percent Complete: 0%
             Open/Closed: Open
         Discussion Lock: Any
                  Effort: 0.00


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Fri 01 Mar 2024 01:23:34 PM CET By: Mohammad Akhlaghi <makhlaghi>
Currently Gnuastro's 'ast-text-prev-batch-in-list' GNU Make extension reads
the full list of inputs as a separate linked list of strings, then parses that
list!

This process and all the extra allocations have a significant affect on the
run-time of Makefiles that use it for a very large (thousands) of names.

We should modify this function to be less CPU consuming: for example to
directly use C's 'strtok' and save the previous tokens in a separate array at
the same time that it is read: therefore not having to make a linked list, not
having to go all the way to the end every time, or having to re-parse the
list.







    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/task/?16510>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]