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

Optimize deal activation by enabling sector activation batching #1278

Closed
3 tasks done
Tracked by #1276
jennijuju opened this issue Apr 10, 2023 · 3 comments
Closed
3 tasks done
Tracked by #1276

Optimize deal activation by enabling sector activation batching #1278

jennijuju opened this issue Apr 10, 2023 · 3 comments
Assignees

Comments

@jennijuju
Copy link
Member

jennijuju commented Apr 10, 2023

Profile activate_deals_and_claim_allocations batches deal activations for deals in one sector and see how much gas it saves. We might want something to enable activating multiple sectors within one PCA message.

Tasks

  1. optimisation
    alexytsu
  2. optimisation
@anorth
Copy link
Member

anorth commented Apr 26, 2023

See also #1101 as a likely angle on reducing gas here.

@anorth
Copy link
Member

anorth commented May 26, 2023

Here is a trace of ProveCommitAggregate with 8 sectors/deals from https://github.com/anorth/fvm-workbench. This is a baseline against which we can measure improvement. Note that this trace is under constructed (repeatable) conditions of empty state, so it will tend to underestimate the cost of updating large linked data structures vs mainnet state (which also means that improvements are relatively more impactful).

https://gist.github.com/alexytsu/8981c9bfe9525fc18d5a058f7d590c30

Span[Root, self: {sum=0, none=0}, total: {sum=322,973,688, OnVerifyAggregateSeals=115,956,010, OnBlockLink=101,446,488, wasm_exec=43,387,915, OnBlockOpenBase=31,302,480, OnSyscall=14,112,000, wasm_memory_init=12,504,269, OnMethodInvocation=2,100,000, wasm_memory_grow=760,218, OnActorUpdate=475,000, OnBlockOpenPerByte=382,410, OnGetRandomness=344,160, OnBlockCreate=171,410, OnBlockRead=15,907, OnHashing=9,422, OnValueTransfer=6,000, OnGetActorCodeCid=0, OnBlockStat=0, OnNetworkContext=0, OnSelfBalance=0, OnGetBuiltinActorType=0, OnMessageContext=0, none=0}]
Span[1-Call(102->f2gmwicvcjm37wudcg6giiha37thwguhswilekszy::26), self: {sum=175,585,733, OnVerifyAggregateSeals=115,956,010, OnBlockLink=22,199,335, wasm_exec=20,907,338, OnBlockOpenBase=11,246,400, OnSyscall=3,626,000, OnActorUpdate=475,000, wasm_memory_init=471,860, OnGetRandomness=344,160, OnBlockOpenPerByte=178,100, OnMethodInvocation=75,000, wasm_memory_grow=52,429, OnBlockCreate=46,590, OnBlockRead=7,401, OnHashing=112, OnMessageContext=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnSelfBalance=0, OnGetActorCodeCid=0}, total: {sum=322,973,688, OnVerifyAggregateSeals=115,956,010, OnBlockLink=101,446,488, wasm_exec=43,387,915, OnBlockOpenBase=31,302,480, OnSyscall=14,112,000, wasm_memory_init=12,504,269, OnMethodInvocation=2,100,000, wasm_memory_grow=760,218, OnActorUpdate=475,000, OnBlockOpenPerByte=382,410, OnGetRandomness=344,160, OnBlockCreate=171,410, OnBlockRead=15,907, OnHashing=9,422, OnValueTransfer=6,000, OnSelfBalance=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnGetActorCodeCid=0}]
Span[2-Call(105->f02::3), self: {sum=1,002,897, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=154,751, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,170, OnBlockCreate=630, OnBlockRead=47, OnGetBuiltinActorType=0, OnMessageContext=0, OnGetActorCodeCid=0}, total: {sum=1,002,897, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=154,751, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,170, OnBlockCreate=630, OnBlockRead=47, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnMessageContext=0}]
Span[3-Call(105->f04::9), self: {sum=982,221, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=133,812, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,500, OnBlockCreate=550, OnBlockRead=60, OnMessageContext=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0}, total: {sum=982,221, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=133,812, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,500, OnBlockCreate=550, OnBlockRead=60, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0}]
Span[4-Call(105->f05::6), self: {sum=6,072,840, OnBlockLink=2,788,560, wasm_exec=1,130,424, OnBlockOpenBase=1,124,640, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,280, OnBlockCreate=4,390, OnHashing=1,113, OnBlockRead=575, OnNetworkContext=0, OnGetActorCodeCid=0, OnBlockStat=0, OnGetBuiltinActorType=0, OnMessageContext=0}, total: {sum=6,072,840, OnBlockLink=2,788,560, wasm_exec=1,130,424, OnBlockOpenBase=1,124,640, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,280, OnBlockCreate=4,390, OnHashing=1,113, OnBlockRead=575, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0}]
Span[5-Call(105->f06::9), self: {sum=8,632,491, OnBlockLink=5,577,332, wasm_exec=1,180,216, OnBlockOpenBase=749,760, OnSyscall=560,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,350, OnBlockOpenPerByte=8,550, OnBlockRead=375, OnHashing=49, OnGetActorCodeCid=0, OnNetworkContext=0, OnGetBuiltinActorType=0, OnMessageContext=0, OnBlockStat=0}, total: {sum=11,671,962, OnBlockLink=7,088,840, wasm_exec=1,573,235, OnBlockOpenBase=1,124,640, wasm_memory_init=891,290, OnSyscall=770,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=11,000, OnBlockOpenPerByte=10,040, OnBlockRead=441, OnHashing=49, OnGetActorCodeCid=0, OnBlockStat=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnMessageContext=0}]
Span[6-Call(6->f07::1434719642), self: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}, total: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[7-Call(105->f05::6), self: {sum=6,074,356, OnBlockLink=2,791,912, wasm_exec=1,128,505, OnBlockOpenBase=1,124,640, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,350, OnBlockCreate=4,400, OnHashing=1,113, OnBlockRead=578, OnMessageContext=0, OnBlockStat=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnGetBuiltinActorType=0}, total: {sum=6,074,356, OnBlockLink=2,791,912, wasm_exec=1,128,505, OnBlockOpenBase=1,124,640, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,350, OnBlockCreate=4,400, OnHashing=1,113, OnBlockRead=578, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0}]
Span[8-Call(105->f06::9), self: {sum=8,928,378, OnBlockLink=5,577,332, wasm_exec=1,260,102, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,350, OnBlockOpenPerByte=9,090, OnBlockRead=397, OnHashing=49, OnGetActorCodeCid=0, OnMessageContext=0, OnNetworkContext=0, OnGetBuiltinActorType=0, OnBlockStat=0}, total: {sum=11,968,113, OnBlockLink=7,088,840, wasm_exec=1,653,384, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=11,000, OnBlockOpenPerByte=10,580, OnBlockRead=462, OnHashing=49, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnBlockStat=0, OnMessageContext=0, OnNetworkContext=0}]
Span[9-Call(6->f07::1434719642), self: {sum=3,039,735, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,283, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=3,039,735, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,283, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}]
Span[10-Call(105->f05::6), self: {sum=6,066,818, OnBlockLink=2,795,265, OnBlockOpenBase=1,124,640, wasm_exec=1,117,531, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,420, OnBlockCreate=4,410, OnHashing=1,113, OnBlockRead=580, OnBlockStat=0, OnMessageContext=0, OnNetworkContext=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0}, total: {sum=6,066,818, OnBlockLink=2,795,265, OnBlockOpenBase=1,124,640, wasm_exec=1,117,531, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,420, OnBlockCreate=4,410, OnHashing=1,113, OnBlockRead=580, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnMessageContext=0, OnBlockStat=0}]
Span[11-Call(105->f06::9), self: {sum=8,923,741, OnBlockLink=5,570,627, wasm_exec=1,262,190, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,330, OnBlockOpenPerByte=9,090, OnBlockRead=397, OnHashing=49, OnMessageContext=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnBlockStat=0, OnNetworkContext=0}, total: {sum=11,963,212, OnBlockLink=7,082,135, wasm_exec=1,655,208, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,980, OnBlockOpenPerByte=10,580, OnBlockRead=462, OnHashing=49, OnNetworkContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnMessageContext=0, OnBlockStat=0}]
Span[12-Call(6->f07::1434719642), self: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[13-Call(105->f05::6), self: {sum=6,059,147, OnBlockLink=2,798,617, OnBlockOpenBase=1,124,640, wasm_exec=1,106,426, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,490, OnBlockCreate=4,420, OnHashing=1,113, OnBlockRead=583, OnMessageContext=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnGetActorCodeCid=0, OnBlockStat=0}, total: {sum=6,059,147, OnBlockLink=2,798,617, OnBlockOpenBase=1,124,640, wasm_exec=1,106,426, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,490, OnBlockCreate=4,420, OnHashing=1,113, OnBlockRead=583, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnBlockStat=0}]
Span[14-Call(105->f06::9), self: {sum=8,910,167, OnBlockLink=5,567,275, wasm_exec=1,251,998, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,320, OnBlockOpenPerByte=9,070, OnBlockRead=396, OnHashing=49, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnMessageContext=0, OnNetworkContext=0, OnBlockStat=0}, total: {sum=11,949,901, OnBlockLink=7,078,782, wasm_exec=1,645,281, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,970, OnBlockOpenPerByte=10,560, OnBlockRead=462, OnHashing=49, OnGetBuiltinActorType=0, OnMessageContext=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnBlockStat=0}]
Span[15-Call(6->f07::1434719642), self: {sum=3,039,735, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,283, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=3,039,735, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,283, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}]
Span[16-Call(105->f05::6), self: {sum=6,053,993, OnBlockLink=2,805,322, OnBlockOpenBase=1,124,640, wasm_exec=1,094,474, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,560, OnBlockCreate=4,440, OnHashing=1,113, OnBlockRead=586, OnGetBuiltinActorType=0, OnMessageContext=0, OnBlockStat=0, OnNetworkContext=0, OnGetActorCodeCid=0}, total: {sum=6,053,993, OnBlockLink=2,805,322, OnBlockOpenBase=1,124,640, wasm_exec=1,094,474, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,560, OnBlockCreate=4,440, OnHashing=1,113, OnBlockRead=586, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0}]
Span[17-Call(105->f06::9), self: {sum=8,906,535, OnBlockLink=5,557,218, wasm_exec=1,258,464, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,290, OnBlockOpenPerByte=9,060, OnBlockRead=396, OnHashing=49, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0}, total: {sum=11,946,005, OnBlockLink=7,068,725, wasm_exec=1,651,482, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,940, OnBlockOpenPerByte=10,550, OnBlockRead=461, OnHashing=49, OnNetworkContext=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnBlockStat=0, OnGetActorCodeCid=0}]
Span[18-Call(6->f07::1434719642), self: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=3,039,471, OnBlockLink=1,511,508, wasm_memory_init=445,645, wasm_exec=393,019, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,650, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[19-Call(105->f05::6), self: {sum=6,056,915, OnBlockLink=2,808,674, OnBlockOpenBase=1,124,640, wasm_exec=1,093,950, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,640, OnBlockCreate=4,450, OnHashing=1,113, OnBlockRead=589, OnGetActorCodeCid=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0, OnGetBuiltinActorType=0}, total: {sum=6,056,915, OnBlockLink=2,808,674, OnBlockOpenBase=1,124,640, wasm_exec=1,093,950, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,640, OnBlockCreate=4,450, OnHashing=1,113, OnBlockRead=589, OnGetActorCodeCid=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnBlockStat=0, OnNetworkContext=0}]
Span[20-Call(105->f06::9), self: {sum=8,909,807, OnBlockLink=5,550,513, wasm_exec=1,268,493, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,270, OnBlockOpenPerByte=9,030, OnBlockRead=394, OnHashing=49, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0, OnGetActorCodeCid=0}, total: {sum=11,945,018, OnBlockLink=7,058,668, wasm_exec=1,660,624, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,900, OnBlockOpenPerByte=10,520, OnBlockRead=460, OnHashing=49, OnBlockStat=0, OnGetBuiltinActorType=0, OnMessageContext=0, OnGetActorCodeCid=0, OnNetworkContext=0}]
Span[21-Call(6->f07::1434719642), self: {sum=3,035,211, OnBlockLink=1,508,156, wasm_memory_init=445,645, wasm_exec=392,131, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,630, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}, total: {sum=3,035,211, OnBlockLink=1,508,156, wasm_memory_init=445,645, wasm_exec=392,131, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,630, OnBlockOpenPerByte=1,490, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[22-Call(105->f05::6), self: {sum=6,044,299, OnBlockLink=2,812,027, OnBlockOpenBase=1,124,640, wasm_exec=1,077,899, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,710, OnBlockCreate=4,460, OnHashing=1,113, OnBlockRead=592, OnNetworkContext=0, OnGetBuiltinActorType=0, OnBlockStat=0, OnMessageContext=0, OnGetActorCodeCid=0}, total: {sum=6,044,299, OnBlockLink=2,812,027, OnBlockOpenBase=1,124,640, wasm_exec=1,077,899, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,710, OnBlockCreate=4,460, OnHashing=1,113, OnBlockRead=592, OnGetBuiltinActorType=0, OnMessageContext=0, OnNetworkContext=0, OnBlockStat=0, OnGetActorCodeCid=0}]
Span[23-Call(105->f06::9), self: {sum=8,905,662, OnBlockLink=5,540,456, wasm_exec=1,274,456, OnBlockOpenBase=937,200, OnSyscall=588,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,240, OnBlockOpenPerByte=9,010, OnBlockRead=393, OnHashing=49, OnMessageContext=0, OnNetworkContext=0, OnGetActorCodeCid=0, OnBlockStat=0, OnGetBuiltinActorType=0}, total: {sum=11,942,942, OnBlockLink=7,048,611, wasm_exec=1,668,666, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=798,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,870, OnBlockOpenPerByte=10,490, OnBlockRead=458, OnHashing=49, OnMessageContext=0, OnBlockStat=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0, OnNetworkContext=0}]
Span[24-Call(6->f07::1434719642), self: {sum=3,037,280, OnBlockLink=1,508,156, wasm_memory_init=445,645, wasm_exec=394,210, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,630, OnBlockOpenPerByte=1,480, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=3,037,280, OnBlockLink=1,508,156, wasm_memory_init=445,645, wasm_exec=394,210, OnBlockOpenBase=374,880, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=1,630, OnBlockOpenPerByte=1,480, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[25-Call(105->f05::6), self: {sum=6,019,557, OnBlockLink=2,801,970, OnBlockOpenBase=1,124,640, wasm_exec=1,063,171, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,780, OnBlockCreate=4,430, OnHashing=1,113, OnBlockRead=595, OnMessageContext=0, OnBlockStat=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnGetActorCodeCid=0}, total: {sum=6,019,557, OnBlockLink=2,801,970, OnBlockOpenBase=1,124,640, wasm_exec=1,063,171, OnSyscall=462,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=14,780, OnBlockCreate=4,430, OnHashing=1,113, OnBlockRead=595, OnGetActorCodeCid=0, OnMessageContext=0, OnBlockStat=0, OnNetworkContext=0, OnGetBuiltinActorType=0}]
Span[26-Call(105->f06::9), self: {sum=8,132,224, OnBlockLink=4,840,016, wasm_exec=1,230,073, OnBlockOpenBase=937,200, OnSyscall=560,000, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=8,980, OnBlockCreate=8,660, OnBlockRead=387, OnHashing=49, OnNetworkContext=0, OnBlockStat=0, OnMessageContext=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0}, total: {sum=11,079,399, OnBlockLink=6,287,828, wasm_exec=1,594,832, OnBlockOpenBase=1,312,080, wasm_memory_init=891,290, OnSyscall=770,000, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockOpenPerByte=10,460, OnBlockCreate=9,980, OnBlockRead=452, OnHashing=49, OnGetBuiltinActorType=0, OnNetworkContext=0, OnGetActorCodeCid=0, OnMessageContext=0, OnBlockStat=0}]
Span[27-Call(6->f07::1434719642), self: {sum=2,947,176, OnBlockLink=1,447,812, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=364,760, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,480, OnBlockCreate=1,320, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}, total: {sum=2,947,176, OnBlockLink=1,447,812, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=364,760, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,480, OnBlockCreate=1,320, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}]
Span[28-Call(105->f04::6), self: {sum=2,482,366, OnBlockLink=1,042,384, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=276,930, OnSyscall=238,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,630, OnBlockCreate=1,600, OnBlockRead=70, OnHashing=14, OnBlockStat=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0}, total: {sum=2,482,366, OnBlockLink=1,042,384, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=276,930, OnSyscall=238,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,630, OnBlockCreate=1,600, OnBlockRead=70, OnHashing=14, OnGetActorCodeCid=0, OnBlockStat=0, OnMessageContext=0, OnGetBuiltinActorType=0}]
Span[29-Call(105->f099::0), self: {sum=6,000, OnValueTransfer=6,000}, total: {sum=6,000, OnValueTransfer=6,000}]

@alexytsu
Copy link
Contributor

alexytsu commented Jun 26, 2023

The changes in #1310 were profiled to a savings of ~11% against the previous changes and in total around 34% down since baseline.

https://gist.githubusercontent.com/alexytsu/8981c9bfe9525fc18d5a058f7d590c30/raw/919aa618cb459936c4a3e132586def5d42feb29a/pca_trace_batched_activation_and_claims.txt

builtin-actors: commit ddc693461053b2fe8d01914cb3789256572e36f9
PR: #1310

  • batch activations across multiple sectors into one call
Span[Root, self: {sum=0, none=0}, total: {sum=213,060,403, OnVerifyAggregateSeals=115,956,010, OnBlockLink=36,493,710, wasm_exec=29,765,960, OnBlockOpenBase=19,493,760, OnSyscall=6,272,000, wasm_memory_init=3,145,728, OnMethodInvocation=525,000, OnActorUpdate=475,000, OnGetRandomness=344,160, OnBlockOpenPerByte=282,070, wasm_memory_grow=209,716, OnBlockCreate=70,270, OnBlockRead=11,794, OnHashing=9,226, OnValueTransfer=6,000, OnMessageContext=0, OnGetActorCodeCid=0, none=0, OnBlockStat=0, OnNetworkContext=0, OnGetBuiltinActorType=0, OnSelfBalance=0}]
Span[1-Call(102->f2gmwicvcjm37wudcg6giiha37thwguhswilekszy::26), self: {sum=174,640,519, OnVerifyAggregateSeals=115,956,010, OnBlockLink=22,199,335, wasm_exec=20,550,253, OnBlockOpenBase=11,246,400, OnSyscall=3,038,000, OnActorUpdate=475,000, wasm_memory_init=471,860, OnGetRandomness=344,160, OnBlockOpenPerByte=178,100, OnMethodInvocation=75,000, wasm_memory_grow=52,429, OnBlockCreate=46,470, OnBlockRead=7,392, OnHashing=112, OnSelfBalance=0, OnBlockStat=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnNetworkContext=0}, total: {sum=213,060,403, OnVerifyAggregateSeals=115,956,010, OnBlockLink=36,493,710, wasm_exec=29,765,960, OnBlockOpenBase=19,493,760, OnSyscall=6,272,000, wasm_memory_init=3,145,728, OnMethodInvocation=525,000, OnActorUpdate=475,000, OnGetRandomness=344,160, OnBlockOpenPerByte=282,070, wasm_memory_grow=209,716, OnBlockCreate=70,270, OnBlockRead=11,794, OnHashing=9,226, OnValueTransfer=6,000, OnMessageContext=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnGetActorCodeCid=0, OnBlockStat=0, OnSelfBalance=0}]
Span[2-Call(105->f02::3), self: {sum=1,002,401, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=154,255, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,170, OnBlockCreate=630, OnBlockRead=47, OnMessageContext=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0}, total: {sum=1,002,401, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=154,255, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,170, OnBlockCreate=630, OnBlockRead=47, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0}]
Span[3-Call(105->f04::9), self: {sum=981,913, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=133,504, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,500, OnBlockCreate=550, OnBlockRead=60, OnMessageContext=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0}, total: {sum=981,913, wasm_memory_init=445,645, OnBlockOpenBase=187,440, wasm_exec=133,504, OnSyscall=112,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,500, OnBlockCreate=550, OnBlockRead=60, OnGetActorCodeCid=0, OnMessageContext=0, OnGetBuiltinActorType=0}]
Span[4-Call(105->f05::6), self: {sum=22,270,261, OnBlockLink=6,964,164, wasm_exec=6,537,600, OnBlockOpenBase=6,372,960, OnSyscall=1,736,000, wasm_memory_init=445,645, OnBlockOpenPerByte=89,630, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=10,530, OnHashing=8,904, OnBlockRead=3,615, OnGetBuiltinActorType=0, OnGetActorCodeCid=0, OnBlockStat=0, OnNetworkContext=0, OnMessageContext=0}, total: {sum=22,270,261, OnBlockLink=6,964,164, wasm_exec=6,537,600, OnBlockOpenBase=6,372,960, OnSyscall=1,736,000, wasm_memory_init=445,645, OnBlockOpenPerByte=89,630, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=10,530, OnHashing=8,904, OnBlockRead=3,615, OnGetActorCodeCid=0, OnMessageContext=0, OnGetBuiltinActorType=0, OnNetworkContext=0, OnBlockStat=0}]
Span[5-Call(105->f06::9), self: {sum=8,744,126, OnBlockLink=4,840,016, wasm_exec=1,763,029, OnSyscall=826,000, OnBlockOpenBase=749,760, wasm_memory_init=445,645, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockCreate=9,170, OnBlockOpenPerByte=8,550, OnBlockRead=546, OnHashing=196, OnGetBuiltinActorType=0, OnMessageContext=0, OnGetActorCodeCid=0, OnNetworkContext=0, OnBlockStat=0}, total: {sum=11,677,884, OnBlockLink=6,287,828, wasm_exec=2,114,360, OnBlockOpenBase=1,124,640, OnSyscall=1,036,000, wasm_memory_init=891,290, OnMethodInvocation=150,000, wasm_memory_grow=52,429, OnBlockCreate=10,490, OnBlockOpenPerByte=10,040, OnBlockRead=612, OnHashing=196, OnGetActorCodeCid=0, OnBlockStat=0, OnGetBuiltinActorType=0, OnMessageContext=0, OnNetworkContext=0}]
Span[6-Call(6->f07::1434719642), self: {sum=2,933,758, OnBlockLink=1,447,812, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=351,331, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,490, OnBlockCreate=1,320, OnBlockRead=66, OnBlockStat=0, OnMessageContext=0}, total: {sum=2,933,758, OnBlockLink=1,447,812, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=351,331, OnSyscall=210,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,490, OnBlockCreate=1,320, OnBlockRead=66, OnMessageContext=0, OnBlockStat=0}]
Span[7-Call(105->f04::6), self: {sum=2,481,427, OnBlockLink=1,042,384, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=275,990, OnSyscall=238,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,630, OnBlockCreate=1,600, OnBlockRead=70, OnHashing=14, OnMessageContext=0, OnBlockStat=0, OnGetActorCodeCid=0, OnGetBuiltinActorType=0}, total: {sum=2,481,427, OnBlockLink=1,042,384, wasm_memory_init=445,645, OnBlockOpenBase=374,880, wasm_exec=275,990, OnSyscall=238,000, OnMethodInvocation=75,000, wasm_memory_grow=26,215, OnBlockOpenPerByte=1,630, OnBlockCreate=1,600, OnBlockRead=70, OnHashing=14, OnMessageContext=0, OnBlockStat=0, OnGetBuiltinActorType=0, OnGetActorCodeCid=0}]
Span[8-Call(105->f099::0), self: {sum=6,000, OnValueTransfer=6,000}, total: {sum=6,000, OnValueTransfer=6,000}]

Full traces

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

3 participants