|
|
��� �������� �������� �� ��������� ������: English ChineseGB Deutsch Francais Russian |
����� Arnout Engelen <arnouten(Q)bzzt.net> �� ������: Arnout Engelen ������ � ������������ ��������� (����������) � �������� � �������� TUNIX ������������������ �� ������������ � ��������. � ��������� ����� �� ���������� ����� � ������ �� ���������. ������� �� �������: Pukhlyakov Kirill <kirill(at)linuxfocus.org> ����������:
|
����������� C/C++ ���������� � ������� GProf������: ���� �� ������ �������������� ���������� ������� ��������� ���� �� ����� ��������� ���� ����������� ���, ������� ����������� � ������� 0.04 �������. GProf ������������� ������� ���� �������������� ����� C/C++ ���������� � ����������� ���������� �������� ����. � �������� �������� ����� �������� ��� ������������� GProf ��� ���������� ������� ���������� ��������� ���������� � 3-� ����� �� 5-�� ������, � ������� ������������� � ����������� 2-� �������� ������.
������� ���������� ����� ���� ������ � 1982 ����, ����� ��� ���� ������������ ��
SIGPLAN Symposium on Compiler Construction. � ��������� ����� ��� ����������� ����������
����������� ��� ���� �������������� UNIX.
|
event2dot
����������� pathalizer 'events' ���� � ����������� 'dot' ����.
������ � ������ ���������� - ������ �������� �� ����� � ����������� ���������� ������� � ����� ��� ��������� � ���� ������� ������, ������� ����� �����������.
�� ���� ���������� event2dot
�������� ����� 3-� �����, ����������� ���
������.
real 3m36.316s user 0m55.590s sys 0m1.070s
g++ -pg dotgen.cpp readfile.cpp main.cpp graph.cpp config.cpp -o event2dot
����� �������� event2dot
. �� ����� ���������� ��������� ����������
����� �������� � ���� 'gmon.out'. ����� ���������� ���������� ������ ���������
�������� 'gprof event2dot
| less'.
gprof ����������, ��� ��������� ������� ������������ ��� ��� �������:
% cumulative self self total time seconds seconds calls s/call s/call name 43.32 46.03 46.03 339952989 0.00 0.00 CompareNodes(Node *,Node *) 25.06 72.66 26.63 55000 0.00 0.00 getNode(char *,NodeListNode *&) 16.80 90.51 17.85 339433374 0.00 0.00 CompareEdges(Edge *,AnnotatedEdge *) 12.70 104.01 13.50 51987 0.00 0.00 addAnnotatedEdge(AnnotatedGraph *,Edge *) 1.98 106.11 2.10 51987 0.00 0.00 addEdge(Graph *,Node *,Node *) 0.07 106.18 0.07 1 0.07 0.07 FindTreshold(AnnotatedEdge *,int) 0.06 106.24 0.06 1 0.06 28.79 getGraphFromFile(char *,NodeListNode *&,Config *) 0.02 106.26 0.02 1 0.02 77.40 summarize(GraphListNode *,Config *) 0.00 106.26 0.00 55000 0.00 0.00 FixName(char *)�������� ���������� ��� ��� ������� - ������: ��� ���������� ���������� �������, ������� ���������� ��������� �� ��� ���� ������� � ���������� �����������.
CompareNodes
. ��� ������� ���������� ������ �������� CompareEdges
,
������� � ���� ������� ���������� ������ addAnnotatedEdge
- ��� ������ ����
������������ � ������. �������� �� �����������.
� ������� addAnnotatedEdge
��������������� ��������� ������ ( linked list ).
�������� �� �������� �������������, ��� �� ������ ������ �������� ������. ������ g->edges
�� �������� ������ ( binary tree ), ��� ��������� ����� ������� �����.
real 2m19.314s user 0m36.370s sys 0m0.940s
% cumulative self self total time seconds seconds calls s/call s/call name 87.01 25.25 25.25 55000 0.00 0.00 getNode(char *,NodeListNode *&) 10.65 28.34 3.09 51987 0.00 0.00 addEdge(Graph *,Node *,Node *)�����, ��� �������, ������� �������� ����� �������� ������� ���������� ����������, ������ ����������� ������� �������! ��������� ��� - ������� ������������� NodeList �� NodeHashTable.
��� ������� ��������� ����:
real 0m3.269s user 0m0.830s sys 0m0.090s
perl -d:DProf mycode.pl
�
�������� ���������� � ������� dprofpp
. ���� �� ������������� ���� Java ����������
� ������� gcj �� ������� ������������ gprof, �� ������� ��� � ��������� ����� ��������������
������ ������������� Java ���.
Webpages maintained by the LinuxFocus Editor team
© Arnout Engelen "some rights reserved" see linuxfocus.org/license/ http://www.LinuxFocus.org |
Translation information:
|
2005-07-14, generated by lfparser version 2.50