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

Reply via email to