Nick,
The first number is the count of the number of times the timer went off
in the function. So most of the time was spent in Socket.recvVec. The
numbers within the name are added by Poly/ML and typically represent the
number of arguments that the function takes. Sequences of strings and
numbers (e.g. Int.scan(3)read_digits(3)) represent functions declared
inside other functions.
The profiler works with the code that is produced at the end of the
compilation process after a lot of inlining so there isn't a precise
correspondence between source functions and "functions" in the final code.
Regards,
David
On 18/08/2016 10:02, Kostirya wrote:
Hello.
There is profiler output for ProfileTime profileMode:
10 GARBAGE COLLECTION (total)
11 servers_stream(5)c_cb(1)
12 ForeignMemory.addFree(2)
12 VectorSliceOperations().subslice(3)
13 ForeignMemory.memoise(2)(1)
14 main_handle(1)
15 Int.scan(3)read_digits(3)
17 client_stream(7)to_channel(2)
18 ForeignMemory.memoise(2)(1)
23 client_stream(7)s_cb(1)(1)
29 ThreadLib.protect(3)
30 String.concat(1)
35 CoParser.takeStr(1)(1)
41 Substring.string(1)
109 CRC32.crcstringi(2)loop(2)
329 EV.kevent(4)
1132 Socket.recvVec'(3)
Where can I get to know the meaning of these numbers?
Best regards, Nick.
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml