loinc / comp-loinc

Computational LOINC in OWL.
MIT License
13 stars 4 forks source link

Improve performance of saving outputs #75

Open joeflack4 opened 2 months ago

joeflack4 commented 2 months ago

Overview

The biggest performance bottleneck in builds is saving outputs, done by the LinkML OWLDumper.

Sub-tasks

Additional info

Based on my investigation so far, it seems that the OWLDumper.to_ontology_document() step of our save_to_owl(). This creates a OntologyDocument object. Once that's done, it saves writes via f.write(str(document)), but this step seems fast.

ShahimEssaid commented 2 months ago

I did some profiling. There is a utility "underscore" function that does about 3 regex substitutions. About 30% of the time is spent there alone.

Sent from mobile

On Mon, Sep 16, 2024, 7:30 PM Joe Flack @.***> wrote:

Overview

The biggest performance bottleneck in builds is saving outputs, done by the LinkML OWLDumper. Sub-tasks

  • Performance profiling

Additional info

Based on my investigation so far, it seems that the OWLDumper.to_ontology_document() step of our save_to_owl(). This creates a OntologyDocument object. Once that's done, it saves writes via f.write(str(document)), but this step seems fast.

— Reply to this email directly, view it on GitHub https://github.com/loinc/comp-loinc/issues/75, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABELXUNH5WSO3DQ553M52T3ZW6H6DAVCNFSM6AAAAABOKPYPMKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGUZDSOBUGMYTENI . You are receiving this because you are subscribed to this thread.Message ID: @.***>