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

Systemtap: low-level performance bottleneck tracing #6

Closed
synctext opened this issue Mar 7, 2013 · 1 comment
Closed

Systemtap: low-level performance bottleneck tracing #6

synctext opened this issue Mar 7, 2013 · 1 comment

Comments

@synctext
Copy link
Member

synctext commented Mar 7, 2013

Aim: dynamic instrumentation and live analysis
Purpose: systematic methodology to identify the top performance bottleneck
Depends: #7, #8, #9 and #19

Performance is not limited to pure CPU usage.
Performance: CPU, memory, Internet bandwidth, file system IO, database queries.
GUI responsiveness is also key.
It is not only average performance, but specifically peaks, stalls and freezes.

Problem is finding the workload of Tribler, as we don't now what a client is doing in the wild due to complexity of our system. reproducibility of the wild

Determine cost of various modules in Tribler:

  • Cost of crypto (both CPU, latency and IO)
  • SQL tracing (cost, variance, volume, IO, CPU, latency)
  • Cost of Dispersy Bloom filter creation
  • network thread
  • Python, C++ Libswift

SystemTap GUI: http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/index.jsp?topic=%2Fliaai%2Fstapgui%2Fdemo.htm

http://sourceware.org/systemtap/SystemTap_Beginners_Guide/introduction.html#goals
SystemTap is a tracing and probing tool that allows users to study and monitor the activities of the computer system (particularly, the kernel) in fine detail. It provides information similar to the output of tools like netstat, ps, top, and iostat; however, SystemTap is designed to provide more filtering and analysis options for collected information.
SystemTap provides the infrastructure to monitor the running Linux kernel for detailed analysis. This can assist administrators and developers in identifying the underlying cause of a bug or performance problem.
Without SystemTap, monitoring the activity of a running kernel would require a tedious instrument, recompile, install, and reboot sequence. SystemTap is designed to eliminate this, allowing users to gather the same information by simply running user-written SystemTap scripts.
However, SystemTap was initially designed for users with intermediate to advanced knowledge of the kernel. This makes SystemTap less useful to administrators or developers with limited knowledge of and experience with the Linux kernel. Moreover, much of the existing SystemTap documentation is similarly aimed at knowledgeable and experienced users. This makes learning the tool similarly difficult.

Expand SystemTap with DAS4-like features, supports 1000 instances of a
distributed app (beyond multi-agent system stuff). Cluster-Systemtap

@ghost ghost assigned corpaul Mar 21, 2013
NielsZeilemaker pushed a commit to NielsZeilemaker/tribler that referenced this issue May 2, 2013
egbertbouman referenced this issue in egbertbouman/tribler Feb 24, 2014
Create a separate libtorrent session for anonymous downloads
@synctext synctext added this to the V9.0: Shadow Internet milestone Nov 3, 2014
@synctext
Copy link
Member Author

synctext commented Jun 1, 2016

@fdversluis For the past 3 years we've worked with limited success on solid profiling. Please include these failures in thesis briefly.
Tor exit nodes are easier hopefully..

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

No branches or pull requests

2 participants