2460bbdfbb
Reason for revert: Leaks, leaks, leaks. Original issue's description: > SkThreadPool ~~> SkTaskGroup > > SkTaskGroup is like SkThreadPool except the threads stay in > one global pool. Each SkTaskGroup itself is tiny (4 bytes) > and its wait() method applies only to tasks add()ed to that > instance, not the whole thread pool. > > This means we don't need to bring up new thread pools when > tests themselves want to use multithreading (e.g. pathops, > quilt). We just create a new SkTaskGroup and wait for that > to complete. This should be more efficient, and allow us > to expand where we use threads to really latency sensitive > places. E.g. we can probably now use these in nanobench > for CPU .skp rendering. > > Now that all threads are sharing the same pool, I think we > can remove most of the custom mechanism pathops tests use > to control threading. They'll just ride on the global pool > with all other tests now. > > This (temporarily?) removes the GPU multithreading feature > from DM, which we don't use. > > On my desktop, DM runs a little faster (57s -> 55s) in > Debug, and a lot faster in Release (36s -> 24s). The bots > show speedups of similar proportions, cutting more than a > minute off the N4/Release and Win7/Debug runtimes. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/9c7207b5dc71dc5a96a2eb107d401133333d5b6f R=caryclark@google.com, bsalomon@google.com, bungeman@google.com, reed@google.com, mtklein@chromium.org TBR=bsalomon@google.com, bungeman@google.com, caryclark@google.com, mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/533393002
62 lines
1.5 KiB
Python
62 lines
1.5 KiB
Python
# GYP for "dm" (Diamond Master, a.k.a Dungeon master, a.k.a GM 2).
|
|
{
|
|
'include_dirs': [
|
|
'../dm',
|
|
'../gm',
|
|
'../tests',
|
|
'../src/images',
|
|
'../src/lazy',
|
|
'../src/core',
|
|
'../src/effects',
|
|
'../src/pipe/utils/',
|
|
'../src/utils',
|
|
'../src/utils/debugger',
|
|
'../tools',
|
|
],
|
|
'dependencies': [
|
|
'etc1.gyp:libetc1',
|
|
'flags.gyp:flags',
|
|
'jsoncpp.gyp:jsoncpp',
|
|
'skia_lib.gyp:skia_lib',
|
|
'tools.gyp:crash_handler',
|
|
'tools.gyp:proc_stats',
|
|
'tools.gyp:sk_tool_utils',
|
|
],
|
|
'includes': [
|
|
'gmslides.gypi',
|
|
'pathops_unittest.gypi',
|
|
'tests.gypi',
|
|
],
|
|
'sources': [
|
|
'../dm/DM.cpp',
|
|
'../dm/DMCpuGMTask.cpp',
|
|
'../dm/DMExpectationsTask.cpp',
|
|
'../dm/DMGpuGMTask.cpp',
|
|
'../dm/DMPDFRasterizeTask.cpp',
|
|
'../dm/DMPDFTask.cpp',
|
|
'../dm/DMPipeTask.cpp',
|
|
'../dm/DMQuiltTask.cpp',
|
|
'../dm/DMReporter.cpp',
|
|
'../dm/DMSKPTask.cpp',
|
|
'../dm/DMSerializeTask.cpp',
|
|
'../dm/DMTask.cpp',
|
|
'../dm/DMTaskRunner.cpp',
|
|
'../dm/DMTestTask.cpp',
|
|
'../dm/DMUtil.cpp',
|
|
'../dm/DMWriteTask.cpp',
|
|
'../gm/gm.cpp',
|
|
'../gm/gm_expectations.cpp',
|
|
|
|
'../src/pipe/utils/SamplePipeControllers.cpp',
|
|
'../src/utils/debugger/SkDebugCanvas.cpp',
|
|
'../src/utils/debugger/SkDrawCommand.cpp',
|
|
'../src/utils/debugger/SkObjectParser.cpp',
|
|
'../tools/LazyDecodeBitmap.cpp',
|
|
],
|
|
'conditions': [
|
|
[ 'skia_gpu == 1', {
|
|
'dependencies': [ 'gputest.gyp:skgputest' ],
|
|
}],
|
|
],
|
|
}
|