Skip to content
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

Question. #32

Open
osevan opened this issue Aug 31, 2021 · 8 comments
Open

Question. #32

osevan opened this issue Aug 31, 2021 · 8 comments

Comments

@osevan
Copy link

osevan commented Aug 31, 2021

delete all object files - find objs/ -type f -name '*.o' -delete
make install

Are you forget here make before make install - remember you need to compile second time after compiling with fprofile-generate.

Hope you can update me

@kaltura-hooks
Copy link

Hi @osevan,

Thank for you reporting an issue and helping improve Kaltura!

To get the fastest response time, and help the maintainers review and test your reported issues or suggestions, please ensure that your issue includes the following (please comment with more info if you have not included all this info in your original issue):

  • Is the issue you're experiencing consistent and across platforms? or does it only happens on certain conditions?
    please provide as much details as possible.
  • Which Kaltura deployment you're using: Kaltura SaaS, or self-hosted?
    If self hosted, are you using the RPM or deb install?
  • Packages installed.
    When using RPM, paste the output for:
	# rpm -qa \"kaltura*\"
For deb based systems:
	# dpkg -l \"kaltura-*\"
  • If running a self hosted ENV - provide the MySQL server version used
  • If running a self hosted ENV - is this a single all in 1 server or a cluster?
  • If running a self hosted ENV, while making the problematic request, run:
	# tail -f /opt/kaltura/log/*.log /opt/kaltura/log/batch/*.log | grep -A 1 -B 1 --color \"ERR:\|PHP\|trace\|CRIT\|\[error\]\"

and paste the output.

  • When relevant, provide any screenshots or screen recordings showing the issue you're experiencing.

For general troubleshooting see:
https://github.com/kaltura/platform-install-packages/blob/Jupiter-10.13.0/doc/kaltura-packages-faq.md#troubleshooting-help

If you only have a general question rather than a bug report, please close this issue and post at:
http://forum.kaltura.org

Thank you in advance,

@erankor
Copy link
Collaborator

erankor commented Sep 1, 2021

The install target has a dependency on the build target, so you don't have to run make separately before make install - make install will build if needed. Usually these are run separately because make install needs sudo while make does not, but it's not mandatory.

@osevan
Copy link
Author

osevan commented Sep 1, 2021

The install target has a dependency on the build target, so you don't have to run make separately before make install - make install will build if needed. Usually these are run separately because make install needs sudo while make does not, but it's not mandatory.

Thank you very much.

@osevan
Copy link
Author

osevan commented Sep 1, 2021

Why this?

add daemon off and master_process off to nginx.conf

Any benefits for profiling?

@erankor
Copy link
Collaborator

erankor commented Sep 1, 2021

If you don't add these directives, nginx will run with multiple processes (master + workers) and these processes will most likely also run as different users (workers by default run as nobody). IIRC, the profiling doesn't work in this case, for example, the master would run first, generate some of the files with user A, then the worker will start as user B and fail to update the files.
This is only for the profiling step, the final/production build should not use these directives.

@osevan
Copy link
Author

osevan commented Sep 1, 2021

If you don't add these directives, nginx will run with multiple processes (master + workers) and these processes will most likely also run as different users (workers by default run as nobody). IIRC, the profiling doesn't work in this case, for example, the master would run first, generate some of the files with user A, then the worker will start as user B and fail to update the files.
This is only for the profiling step, the final/production build should not use these directives.

Thank you very much.

I want share with you nginx speedup with glibc alternative like Newlib and IP stack alternative lwip and malloc alternative mimalloc.

When you find a way compiling nginx with lwip and Newlib outside of micro kernel, you could inform me.
4 x times faster than default nginx librarys
https://github.com/unikraft/lib-nginx

@erankor
Copy link
Collaborator

erankor commented Sep 1, 2021

I wouldn't expect a significant boost with an alternative malloc, since nginx's pool implementation already groups the memory allocations into chunks. Nginx doesn't call malloc on every small string it needs to allocate - it allocates whole pages that are released only when the HTTP request is closed.

@osevan
Copy link
Author

osevan commented Sep 1, 2021

I wouldn't expect a significant boost with an alternative malloc, since nginx's pool implementation already groups the memory allocations into chunks. Nginx doesn't call malloc on every small string it needs to allocate - it allocates whole pages that are released only when the HTTP request is closed.

Give a try in your lab and figure out how we can compile outside microkernel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants