[ / / / / / / / / ] [ b / news+ / boards ] [ operate / meta ] [ ]

/hydrus/ - Hydrus Network

Bug reports, feature requests, and other discussion for the hydrus network.

Catalog

The development of the fully open source software behind 8ch.net that anyone can use ("infinity") is a massive undertaking. Please consider supporting the Infinity Development Group on Flattr by clicking here. Your donations also contribute patches back to vichan, infinity's upstream and engine on which more than one hundred imageboards rely worldwide.
8chan Bitcoin address: 1NpQaXqmCBji6gfX8UgaQEmEstvVY7U32C | Buy Bitcoin easily in the US | Buy Bitcoin anonymously all over the world | Bitcoin FAQ
Name
Email
Subject
Comment *
File
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Embed
(replaces files and can be used instead)
Options
Password (For file and post deletion.)

Allowed file types: jpg, jpeg, gif, png, webm, mp4, swf, pdf
Max filesize is 8 MB.
Max image dimensions are 10000 x 10000.
You may upload 1 per post.


New user? Start here ---> http://hydrusnetwork.github.io/hydrus/

File: 1429780860039.jpg (9.08 KB, 217x208, 217:208, 4ef562d7a0b1af126befd3f386….jpg)

 No.659

Pic related it's what I'm practising.

I don't know if this interests anyone else but I've looked a little into speeding up Hydrus' launch:

1. Uninstall pyopenssl if you have it installed. This will shave just over a second off the startup time (if your computer is comparable to mine). Pyopenssl apparently decides to go and parse a bunch of C files when it's imported, which wastes time. I don't know of a better solution than just uninstalling it. https://github.com/pyca/pyopenssl/issues/137

2. If you compile everything in cython (except ClientController and ClientGUICommon, which crash in cython) it will load about 0.5s faster. I can't use very scientific timings here unfortunately, but that's what I've found. The drawback is that you'll need to edit a lot of the code before it works in cython and it will take ages to compile. Seriously that shit takes forever. Probably not worth the half second it gives.

3. Removing unused imports and moving some to a 'lazy' position. The server python files are imported from the client files, but not actually used (for the most part). Moving these out of the way did nothing noticeable to startup time at all. I was a bit optimistic here it seems.

I can't get the full launch/close cycle beneath 5 seconds by any trivial means. cProfile is a bit too rudimentary to give me any idea of what's going on, and RunSnakeRun doesn't run. If anyone has any pointers here to satisfy this one man's startup time fetish I'd be grateful.

BTW, if any Arch users here are following the AUR package, in the next couple of days I might be putting an option in the PKGBUILD for compiling in Cython. Use at your own risk, caveat emptor, etc etc. I will also be switching from using pyc to pyo by default because why the heck not.

 No.661

File: 1429799099506.jpg (123.58 KB, 824x1042, 412:521, 370bdd93f0e67bb126bc5516e1….jpg)

>>659

Thank you for these thoughts.

The client and server boot time took a dip on my dev machine this past week, so I plan to do some additional profiling to try to reduce it again. I expect, as you say, that it is mostly some bad imports.

I don't attend to this problem as much as I probably should because I keep my own personal copies of the client on my laptop open all the time.


 No.662

I've updated the PKGBUILD with a cython compiler option. If you use the package, edit the pkgbuild to enable this. I might have another go at profiling too if I can figure out what tools will work for me.




[Return][Go to top][Catalog][Post a Reply]
Delete Post [ ]
[]
[ / / / / / / / / ] [ b / news+ / boards ] [ operate / meta ] [ ]