-
Notifications
You must be signed in to change notification settings - Fork 235
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Loading optimization #35
Comments
This is wonderful! 😀 Yes, I agree. I will finish the first version, and see how can we integrate this. I am sure this is something everyone will be willing to use. Once I finish 1.0, I will read all your documentation carefully so hopefully we can have this integrated as soon as possible. Congratulations for the amazing work! |
Hey @andrewisen, I finally found some time to take a look at your documentation. It is super nice! I would love to see this in a Pull Request to see how fast IFC.js becomes. As I think they are two separate topics, I would start with web workers, and then (in another PR) implement IndexDB. What do you think? You can simply pull the last changes in the code, submit a draft pull request attached to this issue and I can help you with the problems that arise. 🙂 |
Yhea, sounds great. I can do some refactoring to my code. I'm a bit busy with other stuff at the moment. |
Great. Also, beware that if the reason not to use web workers with |
I had some extra time to look at my code 🤓 Firstly, I did some major code refactoring. I have separated the examples, which will make the PR much nicer. My examples are now placed in the I will take a short break (I have other stuff to do atm) and get back to this during this weekend. |
I noticed that my multi-web-worker example didn't perform as well with the latest changes (e.g. b41d41b, 4536408, d92e8f8). There is a time penalty for starting an additional Web Worker. My guess is that the parser is so much faster now that there's no performance gain to be made. This might be different for large (>200MB) IFC files. I will experiment with this some more 😄 |
I'm closing this issue for now, as the main responsible for optimization now are both web-ifc-three and web-ifc. Feel free to drop new ideas there to make this even faster! |
This issue refers to how fast the scenes load. In other words, how fast can we parse an IFC file. Check out #33 for the related
geometry optimization
issue.I have implemented web workers to allow for "multithreading". Here's a link to my fork. I have documented my thoughts here and here.
TL;DR:
210129_SpeedTest.mp4
The next step is to figure out how to implement my (or a similar) solution into this project. There are many ways to do this.
I suggest we/you release the first version of
IFC.js
and THEN implement web worker support.Yes - performance is an important factor. But, I think it's more important to support the most useful IFC2x3 classes.
Anyways, that's just my thoughts. I'm open to suggestion and I encourage others to experiment with this as well.
The text was updated successfully, but these errors were encountered: