aboutsummaryrefslogtreecommitdiff
path: root/virtualallochist.d
diff options
context:
space:
mode:
Diffstat (limited to 'virtualallochist.d')
-rwxr-xr-xvirtualallochist.d53
1 files changed, 53 insertions, 0 deletions
diff --git a/virtualallochist.d b/virtualallochist.d
new file mode 100755
index 0000000..4c7fc2a
--- /dev/null
+++ b/virtualallochist.d
@@ -0,0 +1,53 @@
+/*
+syscall::NtAllocateVirtualMemory:entry
+/execname == "bench2.exe"/
+{
+ self->ts = timestamp;
+}
+
+syscall::NtAllocateVirtualMemory:return
+/execname == "bench2.exe"/
+{
+ @alloc[execname] = quantize((timestamp - self->ts) / 1000);
+}
+*/
+
+pid$1::VirtualAlloc:entry
+{
+ self->ts[probefunc] = timestamp;
+}
+
+pid$1::VirtualAlloc:return
+{
+ @[execname,probefunc] = quantize((timestamp - self->ts[probefunc]) / 1000);
+}
+
+pid$1::GetProcessTimes:entry
+{
+ self->ts[probefunc] = timestamp;
+}
+
+pid$1::GetProcessTimes:return
+{
+ @[execname,probefunc] = quantize((timestamp - self->ts[probefunc]) / 1000);
+}
+
+pid$1::"DynArray<std::unique_ptr<int,std::default_delete<int> > >::Append":entry
+{
+ self->ts[probefunc] = timestamp;
+}
+
+pid$1::"DynArray<std::unique_ptr<int,std::default_delete<int> > >::Append":return
+{
+ @[execname,probefunc] = quantize((timestamp - self->ts[probefunc]) / 1000);
+}
+
+pid$1::"DynArray<int>::Append":entry
+{
+ self->ts[probefunc] = timestamp;
+}
+
+pid$1::"DynArray<int>::Append":return
+{
+ @[execname,probefunc] = quantize((timestamp - self->ts[probefunc]) / 1000);
+} \ No newline at end of file