rii-mango / Daikon

A JavaScript DICOM reader.
Other
221 stars 54 forks source link

improve performance of getInterpretedData ~20% #19

Closed nickhingston closed 6 years ago

nickhingston commented 6 years ago

Hi,

Please find minor change to improve performance a bit.

noticeable on large images. Between 20%->30% faster.

FYI, I am looking into using gpu.js to improve things further...

Cheers

Nick

nickhingston commented 6 years ago

Further to this I have got GPU acceleration working. looks like between 2-6x rendering performance improvement for large images (greyscale at least, on a 2017 macbook).

the code is a bit more complex than it should be to get around bugs in gpu.js - but its working on my gpu branch on my fork...https://github.com/nickhingston/Daikon/tree/gpu

To see it running, just build and open tests/browser.html - creates 2 canvas's (first of which is non accelerated).

Things could be improved, e.g. doing the colour palette lookups and possibly some of the decoders. But I think performance is now good enough to use in my app...

robertleeplummerjr commented 6 years ago

@martinezmj can you take a look here? @nickhingston and I have been collaborating on a version that is upwards of 600% faster: https://github.com/rii-mango/Daikon/compare/master...nickhingston:gpu

It'd be really nice to get this to those who use it

martinezmj-ims commented 6 years ago

Hey, sorry for the delay on this. I got really busy with the end of the semester. I'll do my best to review this later this week. Looks like great work.

robertleeplummerjr commented 6 years ago

@nickhingston has been helpful and professional enough helping to build a better gpu.js, if you added him as a collaborator I'd imagine you'd be making a wise investment ;) for the future of this lib. Just a suggestion.