Last active
October 13, 2023 10:43
-
-
Save ryogrid/b4611d5f41fc8afe8a921181c48c8ab0 to your computer and use it in GitHub Desktop.
10万エントリを並列にINSERTして、その後、その中からランダムに並列にSELECTした時のcpu profile
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(pprof) top200 | |
Showing nodes accounting for 130.23s, 82.06% of 158.71s total | |
Dropped 688 nodes (cum <= 0.79s) | |
flat flat% sum% cum cum% | |
16.15s 10.18% 10.18% 16.17s 10.19% runtime.stdcall2 | |
13s 8.19% 18.37% 13s 8.19% runtime._ExternalCode | |
5.61s 3.53% 21.90% 20.12s 12.68% runtime.mallocgc | |
4.54s 2.86% 24.76% 20.85s 13.14% runtime.scanobject | |
4.08s 2.57% 27.33% 4.09s 2.58% runtime.stdcall1 | |
3.79s 2.39% 29.72% 8.55s 5.39% runtime.findObject | |
3.65s 2.30% 32.02% 3.65s 2.30% runtime/internal/atomic.(*Uint8).Load (inline) | |
3.28s 2.07% 34.09% 3.28s 2.07% runtime.procyield | |
3.13s 1.97% 36.06% 3.86s 2.43% runtime.step | |
2.96s 1.87% 37.92% 3.02s 1.90% runtime.(*gcBits).bitp (inline) | |
2.68s 1.69% 39.61% 20.33s 12.81% runtime.lock2 | |
2.65s 1.67% 41.28% 7.89s 4.97% runtime.pcvalue | |
2.31s 1.46% 42.74% 3.03s 1.91% runtime.mapaccess2_fast32 | |
2.10s 1.32% 44.06% 2.14s 1.35% runtime.heapBitsForAddr | |
2s 1.26% 45.32% 2.06s 1.30% runtime.writeHeapBits.flush | |
1.98s 1.25% 46.57% 18.03s 11.36% sync.(*Mutex).lockSlow | |
1.93s 1.22% 47.79% 1.93s 1.22% runtime.nextFreeFast (inline) | |
1.78s 1.12% 48.91% 1.78s 1.12% runtime.stdcall3 | |
1.69s 1.06% 49.97% 1.86s 1.17% runtime.(*semaRoot).dequeue | |
1.68s 1.06% 51.03% 12.02s 7.57% encoding/binary.Read | |
1.57s 0.99% 52.02% 1.57s 0.99% runtime.(*mspan).base (inline) | |
1.37s 0.86% 52.88% 6.85s 4.32% runtime.greyobject | |
1.29s 0.81% 53.70% 1.29s 0.81% runtime.memclrNoHeapPointers | |
1.27s 0.8% 54.50% 20.27s 12.77% github.com/ryogrid/SamehadaDB/storage/buffer.(*BufferPoolManager).FetchPage | |
1.23s 0.77% 55.27% 35.18s 22.17% runtime.gcDrain | |
1.19s 0.75% 56.02% 3.17s 2.00% runtime.unlock2 | |
1.17s 0.74% 56.76% 1.17s 0.74% github.com/ryogrid/SamehadaDB/storage/access.isContainsRID (inline) | |
1.17s 0.74% 57.49% 19.20s 12.10% sync.(*Mutex).Lock (inline) | |
1.15s 0.72% 58.22% 15.37s 9.68% sync.(*Mutex).Unlock (inline) | |
1.10s 0.69% 58.91% 1.10s 0.69% runtime.memmove | |
1.05s 0.66% 59.57% 4.42s 2.78% runtime.deductAssistCredit | |
1.04s 0.66% 60.23% 1.22s 0.77% runtime.runqgrab | |
1.02s 0.64% 60.87% 3.76s 2.37% runtime.(*unwinder).resolveInternal | |
1.01s 0.64% 61.51% 1.01s 0.64% encoding/binary.intDataSize | |
1s 0.63% 62.14% 2.24s 1.41% io.ReadAtLeast | |
1s 0.63% 62.77% 3.21s 2.02% runtime.ready | |
0.97s 0.61% 63.38% 0.97s 0.61% runtime.cansemacquire (inline) | |
0.96s 0.6% 63.98% 0.96s 0.6% runtime.arenaIndex (inline) | |
0.93s 0.59% 64.57% 1.10s 0.69% encoding/binary.sizeof | |
0.93s 0.59% 65.16% 1.15s 0.72% runtime.spanOf (inline) | |
0.93s 0.59% 65.74% 4.41s 2.78% runtime.stealWork | |
0.92s 0.58% 66.32% 6.79s 4.28% runtime.(*stkframe).getStackMap | |
0.90s 0.57% 66.89% 3.43s 2.16% sync.(*RWMutex).Lock | |
0.87s 0.55% 67.44% 0.87s 0.55% sync/atomic.(*Int32).Add (inline) | |
0.85s 0.54% 67.97% 0.85s 0.54% runtime.(*moduledata).textAddr | |
0.85s 0.54% 68.51% 0.85s 0.54% runtime.readgstatus (inline) | |
0.84s 0.53% 69.04% 12.93s 8.15% runtime.semacquire1 | |
0.79s 0.5% 69.54% 0.95s 0.6% runtime.(*semaRoot).queue | |
0.79s 0.5% 70.03% 0.80s 0.5% runtime.gopark | |
0.77s 0.49% 70.52% 9.11s 5.74% runtime.findRunnable | |
0.73s 0.46% 70.98% 3.55s 2.24% runtime.heapBitsSetType | |
0.72s 0.45% 71.43% 0.99s 0.62% runtime.casgstatus | |
0.65s 0.41% 71.84% 1.52s 0.96% github.com/ryogrid/SamehadaDB/storage/buffer.(*circularList).remove (inline) | |
0.61s 0.38% 72.23% 1.24s 0.78% bytes.(*Buffer).Read | |
0.60s 0.38% 72.60% 0.93s 0.59% runtime.execute | |
0.58s 0.37% 72.97% 5.21s 3.28% github.com/pingcap/parser.yyParse | |
0.58s 0.37% 73.34% 49.80s 31.38% github.com/ryogrid/SamehadaDB/storage/access.(*TableHeap).InsertTuple | |
0.57s 0.36% 73.69% 1.81s 1.14% encoding/binary.(*decoder).value | |
0.56s 0.35% 74.05% 1.41s 0.89% runtime.funcInfo.entry (inline) | |
0.52s 0.33% 74.37% 12.34s 7.78% runtime.schedule | |
0.48s 0.3% 74.68% 14.02s 8.83% runtime.park_m | |
0.47s 0.3% 74.97% 13.31s 8.39% runtime.newobject | |
0.46s 0.29% 75.26% 3.88s 2.44% github.com/ryogrid/SamehadaDB/common.(*readerWriterLatch).WLock | |
0.45s 0.28% 75.55% 13.84s 8.72% runtime.semrelease1 | |
0.44s 0.28% 75.82% 3s 1.89% runtime.scanblock | |
0.43s 0.27% 76.09% 19.32s 12.17% github.com/ryogrid/SamehadaDB/storage/buffer.(*BufferPoolManager).UnpinPage | |
0.42s 0.26% 76.36% 4.62s 2.91% runtime.makeslice | |
0.41s 0.26% 76.62% 10.19s 6.42% github.com/ryogrid/SamehadaDB/types.NewUInt32FromBytes (inline) | |
0.39s 0.25% 76.86% 2.42s 1.52% github.com/ryogrid/SamehadaDB/storage/buffer.(*circularList).insert | |
0.39s 0.25% 77.11% 1.10s 0.69% runtime.spanOfUnchecked (inline) | |
0.36s 0.23% 77.34% 14.22s 8.96% sync.(*Mutex).unlockSlow | |
0.35s 0.22% 77.56% 18.06s 11.38% github.com/ryogrid/SamehadaDB/container/skip_list.(*SkipList).FindNode | |
0.33s 0.21% 77.76% 46.93s 29.57% runtime.systemstack | |
0.31s 0.2% 77.96% 16.37s 10.31% runtime.markroot | |
0.30s 0.19% 78.15% 3.03s 1.91% github.com/ryogrid/SamehadaDB/common.(*readerWriterLatch).WUnlock | |
0.29s 0.18% 78.33% 8.84s 5.57% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).InsertTuple | |
0.28s 0.18% 78.51% 3.88s 2.44% runtime.(*unwinder).next | |
0.28s 0.18% 78.68% 7.62s 4.80% runtime.scanframeworker | |
0.27s 0.17% 78.85% 1.49s 0.94% runtime.runqsteal | |
0.26s 0.16% 79.02% 1.41s 0.89% encoding/binary.dataSize | |
0.26s 0.16% 79.18% 2.36s 1.49% github.com/ryogrid/SamehadaDB/storage/buffer.(*ClockReplacer).Pin | |
0.26s 0.16% 79.35% 4.36s 2.75% runtime.gcDrainN | |
0.23s 0.14% 79.49% 7.95s 5.01% bytes.NewBuffer (inline) | |
0.22s 0.14% 79.63% 1.27s 0.8% encoding/binary.Write | |
0.20s 0.13% 79.76% 0.95s 0.6% runtime.wbBufFlush1 | |
0.18s 0.11% 79.87% 14.45s 9.10% runtime.mcall | |
0.18s 0.11% 79.98% 14.73s 9.28% runtime.scanstack | |
0.18s 0.11% 80.10% 2.80s 1.76% runtime.wakep | |
0.15s 0.095% 80.19% 4.13s 2.60% github.com/ryogrid/SamehadaDB/types.NewValueFromBytes | |
0.14s 0.088% 80.28% 4.49s 2.83% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).GetFreeSpacePointer | |
0.14s 0.088% 80.37% 1.67s 1.05% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetEntryOffset | |
0.13s 0.082% 80.45% 3.11s 1.96% github.com/ryogrid/SamehadaDB/storage/buffer.(*ClockReplacer).Unpin | |
0.12s 0.076% 80.52% 3.05s 1.92% github.com/ryogrid/SamehadaDB/storage/page.(*Page).WUnlatch (inline) | |
0.12s 0.076% 80.60% 5.28s 3.33% runtime.pcdatavalue | |
0.10s 0.063% 80.66% 1.26s 0.79% runtime.(*mcache).refill | |
0.10s 0.063% 80.73% 13.03s 8.21% sync.runtime_SemacquireMutex | |
0.10s 0.063% 80.79% 2.01s 1.27% sync.runtime_doSpin | |
0.09s 0.057% 80.85% 3.03s 1.91% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).GetTupleCount | |
0.09s 0.057% 80.90% 1.05s 0.66% github.com/ryogrid/SamehadaDB/storage/page.(*Page).GetLSN | |
0.09s 0.057% 80.96% 0.92s 0.58% runtime.(*unwinder).initAt | |
0.09s 0.057% 81.02% 3.16s 1.99% runtime.adjustframe | |
0.08s 0.05% 81.07% 2.17s 1.37% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetPageId | |
0.08s 0.05% 81.12% 1.47s 0.93% runtime.(*mcache).nextFree | |
0.08s 0.05% 81.17% 2.57s 1.62% runtime.goready (inline) | |
0.07s 0.044% 81.21% 3.85s 2.43% github.com/ryogrid/SamehadaDB/storage/page.(*Page).WLatch (inline) | |
0.07s 0.044% 81.26% 5.62s 3.54% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.NewSkipListPairFromBytes | |
0.07s 0.044% 81.30% 2.50s 1.58% runtime.stackalloc | |
0.06s 0.038% 81.34% 0.94s 0.59% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetForwardEntry | |
0.06s 0.038% 81.37% 2.30s 1.45% io.ReadFull (inline) | |
0.06s 0.038% 81.41% 2.13s 1.34% runtime.notewakeup | |
0.06s 0.038% 81.45% 3.26s 2.05% runtime.readyWithTime.goready.func1 | |
0.06s 0.038% 81.49% 2.38s 1.50% runtime.shrinkstack | |
0.05s 0.032% 81.52% 1.10s 0.69% github.com/ryogrid/SamehadaDB/planner/optimizer.(*SelingerOptimizer).findBestScan | |
0.05s 0.032% 81.55% 85.74s 54.02% github.com/ryogrid/SamehadaDB/samehada.(*SamehadaDB).ExecuteSQLRetValues | |
0.05s 0.032% 81.58% 8.36s 5.27% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetEntry | |
0.05s 0.032% 81.61% 16.04s 10.11% runtime.semasleep | |
0.04s 0.025% 81.64% 2.31s 1.46% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).GetNextPageId | |
0.04s 0.025% 81.66% 6.46s 4.07% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).getFreeSpaceRemaining 0.04s 0.025% 81.69% 3.90s 2.46% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).FindEntryByKey | |
0.04s 0.025% 81.72% 1.02s 0.64% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetEntrySize | |
0.04s 0.025% 81.74% 2.73s 1.72% sync.(*RWMutex).Unlock | |
0.04s 0.025% 81.77% 13.86s 8.73% sync.runtime_Semrelease | |
0.03s 0.019% 81.78% 4.04s 2.55% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).Insert | |
0.03s 0.019% 81.80% 6.70s 4.22% runtime.copystack | |
0.03s 0.019% 81.82% 15.18s 9.56% runtime.markroot.func1 | |
0.03s 0.019% 81.84% 1.05s 0.66% runtime.parkunlock_c | |
0.02s 0.013% 81.85% 1.59s 1.00% github.com/ryogrid/SamehadaDB/catalog.(*TableStatistics).Update | |
0.02s 0.013% 81.87% 16.19s 10.20% github.com/ryogrid/SamehadaDB/storage/index.(*SkipListIndex).InsertEntry | |
0.02s 0.013% 81.88% 3.37s 2.12% runtime.gcAssistAlloc | |
0.02s 0.013% 81.89% 4.78s 3.01% runtime.lock (inline) | |
0.02s 0.013% 81.90% 2.58s 1.63% runtime.readyWithTime | |
0.02s 0.013% 81.92% 4.05s 2.55% runtime.semawakeup | |
0.02s 0.013% 81.93% 3.19s 2.01% runtime.unlock (inline) | |
0.02s 0.013% 81.94% 0.95s 0.6% runtime.wbBufFlush | |
0.01s 0.0063% 81.95% 5.42s 3.42% github.com/pingcap/parser.(*Parser).Parse | |
0.01s 0.0063% 81.95% 7.87s 4.96% github.com/ryogrid/SamehadaDB/container/skip_list.NewSkipListIterator | |
0.01s 0.0063% 81.96% 75.25s 47.41% github.com/ryogrid/SamehadaDB/execution/executors.(*ExecutionEngine).Execute | |
0.01s 0.0063% 81.97% 66.03s 41.60% github.com/ryogrid/SamehadaDB/execution/executors.(*InsertExecutor).Next | |
0.01s 0.0063% 81.97% 0.80s 0.5% github.com/ryogrid/SamehadaDB/execution/executors.(*ProjectionExecutor).Next | |
0.01s 0.0063% 81.98% 8.39s 5.29% github.com/ryogrid/SamehadaDB/execution/executors.(*RangeScanWithIndexExecutor).Init | |
0.01s 0.0063% 81.99% 6.25s 3.94% github.com/ryogrid/SamehadaDB/parser.parse | |
0.01s 0.0063% 81.99% 1.65s 1.04% github.com/ryogrid/SamehadaDB/planner/optimizer.(*SelingerOptimizer).findBestScans | |
0.01s 0.0063% 82.00% 73.03s 46.01% github.com/ryogrid/SamehadaDB/samehada/samehada_test_test.BenchmarkParallelQueryIssue.func1 | |
0.01s 0.0063% 82.00% 1.35s 0.85% github.com/ryogrid/SamehadaDB/storage/access.(*TableHeapIterator).Next | |
0.01s 0.0063% 82.01% 4.81s 3.03% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).GetSmallestKey (inline) | |
0.01s 0.0063% 82.02% 3.15s 1.98% github.com/ryogrid/SamehadaDB/types.NewPageIDFromBytes (inline) | |
0.01s 0.0063% 82.02% 2.51s 1.58% github.com/ryogrid/SamehadaDB/types.NewUInt16FromBytes (inline) | |
0.01s 0.0063% 82.03% 1.18s 0.74% github.com/ryogrid/SamehadaDB/types.NewUInt64FromBytes (inline) | |
0.01s 0.0063% 82.04% 0.93s 0.59% runtime.(*unwinder).init (inline) | |
0.01s 0.0063% 82.04% 1.77s 1.12% runtime.resetspinning | |
0.01s 0.0063% 82.05% 2.23s 1.41% runtime.startm | |
0.01s 0.0063% 82.06% 0.91s 0.57% runtime.wbBufFlush.func1 | |
0 0% 82.06% 0.82s 0.52% github.com/pingcap/parser.New (inline) | |
0 0% 82.06% 1.60s 1.01% github.com/ryogrid/SamehadaDB/concurrency.(*StatisticsUpdater).StartStaticsUpdaterTh.func1 | |
0 0% 82.06% 1.60s 1.01% github.com/ryogrid/SamehadaDB/concurrency.(*StatisticsUpdater).UpdateAllTablesStatistics | |
0 0% 82.06% 7.38s 4.65% github.com/ryogrid/SamehadaDB/container/skip_list.(*SkipList).FindNodeWithEntryIdxForItr | |
0 0% 82.06% 15.78s 9.94% github.com/ryogrid/SamehadaDB/container/skip_list.(*SkipList).Insert | |
0 0% 82.06% 7.87s 4.96% github.com/ryogrid/SamehadaDB/container/skip_list.(*SkipList).Iterator (inline) 0 0% 82.06% 7.81s 4.92% github.com/ryogrid/SamehadaDB/container/skip_list.(*SkipListIterator).initRIDList | |
0 0% 82.06% 8.39s 5.29% github.com/ryogrid/SamehadaDB/execution/executors.(*ProjectionExecutor).Init | |
0 0% 82.06% 6.95s 4.38% github.com/ryogrid/SamehadaDB/parser.ProcessSQLStr | |
0 0% 82.06% 1.99s 1.25% github.com/ryogrid/SamehadaDB/planner.(*SimplePlanner).MakeOptimizedSelectPlanWithJoin | |
0 0% 82.06% 2.25s 1.42% github.com/ryogrid/SamehadaDB/planner.(*SimplePlanner).MakePlan | |
0 0% 82.06% 1.99s 1.25% github.com/ryogrid/SamehadaDB/planner.(*SimplePlanner).MakeSelectPlan | |
0 0% 82.06% 1.99s 1.25% github.com/ryogrid/SamehadaDB/planner/optimizer.(*SelingerOptimizer).Optimize | |
0 0% 82.06% 15.18s 9.56% github.com/ryogrid/SamehadaDB/samehada/samehada_test_test.BenchmarkParallelQueryIssue.func3 | |
0 0% 82.06% 1.34s 0.84% github.com/ryogrid/SamehadaDB/storage/access.(*TablePage).GetTuple | |
0 0% 82.06% 1.17s 0.74% github.com/ryogrid/SamehadaDB/storage/access.(*Transaction).IsSharedLocked (inline) | |
0 0% 82.06% 8.23s 5.19% github.com/ryogrid/SamehadaDB/storage/index.(*SkipListIndex).GetRangeScanIterator | |
0 0% 82.06% 2.80s 1.76% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.(*SkipListBlockPage).KeyAt (inline) | |
0 0% 82.06% 4.02s 2.53% github.com/ryogrid/SamehadaDB/storage/page/skip_list_page.FetchAndCastToBlockPage (inline) | |
0 0% 82.06% 0.96s 0.6% github.com/ryogrid/SamehadaDB/types.NewLSNFromBytes (inline) | |
0 0% 82.06% 3.65s 2.30% runtime.(*mSpanStateBox).get (inline) | |
0 0% 82.06% 3.02s 1.90% runtime.(*mspan).markBitsForIndex (inline) | |
0 0% 82.06% 1.84s 1.16% runtime.(*pageAlloc).scavenge.func1 | |
0 0% 82.06% 1.84s 1.16% runtime.(*pageAlloc).scavengeOne | |
0 0% 82.06% 13s 8.19% runtime._System | |
0 0% 82.06% 2.27s 1.43% runtime.convT32 | |
0 0% 82.06% 2.74s 1.73% runtime.funcspdelta (inline) | |
0 0% 82.06% 4.36s 2.75% runtime.gcAssistAlloc.func1 | |
0 0% 82.06% 4.36s 2.75% runtime.gcAssistAlloc1 | |
0 0% 82.06% 34.38s 21.66% runtime.gcBgMarkWorker | |
0 0% 82.06% 35.18s 22.17% runtime.gcBgMarkWorker.func2 | |
0 0% 82.06% 0.80s 0.5% runtime.goparkunlock (inline) | |
0 0% 82.06% 20.33s 12.81% runtime.lockWithRank (inline) | |
0 0% 82.06% 0.86s 0.54% runtime.morestack | |
0 0% 82.06% 4.79s 3.02% runtime.newstack | |
0 0% 82.06% 2.42s 1.52% runtime.stackcacherefill | |
0 0% 82.06% 1.78s 1.12% runtime.sysUnused (inline) | |
0 0% 82.06% 1.78s 1.12% runtime.sysUnusedOS | |
0 0% 82.06% 3.17s 2.00% runtime.unlockWithRank (inline) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment