Re: InstallMgr::getModuleStatus / Performance optimization possible?

Tobias Klein <[email protected]>
Newsgroups gmane.comp.literature.sword.devel
Message-ID <[email protected]>
Thank you, Troy!

I'd be glad to test any changes you come up with!

Best regards,
Tobias

On 11/3/22 5:57 PM, Troy A. Griffitts wrote:
>
> Dear Tobias,
>
> I can have a look at optimizing getModuleStatus.  I can certainly see 
> that only checking locally installed modules might be a speed 
> improvement, but I suspect most of the time is loading all the .conf 
> files for each module, and that is done when constructing the SWMgr 
> (remote and local).  SWORD previously worked with a single 
> modules.conf file where the section was appended each time a module 
> was loaded.  It still will work in this manner.  I might try dumping 
> all the .conf files into a single cache.conf file and using that for 
> reading the info of a remote repository-- which can include thousands 
> of individual .conf files.  We can see if that speeds up this operation.
>
> On 10/30/22 08:49, Tobias Klein wrote:
>>
>> Hi Troy,
>>
>> When integrating the module update functionality in Ezra Bible App, I 
>> noticed a performance issue in the function InstallMgr::getModuleStatus.
>>
>> On my laptop, it takes almost two seconds to run this against all 
>> repositories from the master repo list. On my slower surface tablet, 
>> it takes even longer and I haven’t tested it on my even slower 
>> Android devices, yet. This generates a bit of an issue in my 
>> JavaScript based application (longer interrupts of the JavaScript 
>> event loop lead to some freezing in the UI).
>>
>> Considering the parameters constSWMgr &base, constSWMgr &other, I saw 
>> that the function loops through all modules within other. If one just 
>> wants to see which local modules are outdated, it would be enough to 
>> go through the ones that are also present within base, right? Could 
>> that be a way of optimizing the performance?
>>
>> Best regards,
>> Tobias
>>
>>
>> _______________________________________________
>> sword-devel mailing list:[email protected]
>> http://crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
>
> _______________________________________________
> sword-devel mailing list: [email protected]
> http://crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page

_______________________________________________
sword-devel mailing list: [email protected]
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.