mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
layout: Implement parallel reflow for the bubble-widths and
assign-heights phases. This uses the new work-stealing deque. By default, 3/4 of a thread per logical CPU is used. This can be tuned with the `-y` flag. I measured a 65% reflow speedup on `perf-rainbow.html` and a 247% reflow speedup on `http://en.wikipedia.org/wiki/South_China_Sea` on a 4-core HyperThreaded Core i7. However, numbers were fairly volatile, especially for the latter.
This commit is contained in:
parent
539cf58f73
commit
54f0f17f83
21 changed files with 706 additions and 141 deletions
|
@ -25,7 +25,7 @@ use extra::arc::Arc;
|
|||
|
||||
use buffer_map::BufferMap;
|
||||
use display_list::DisplayList;
|
||||
use font_context::FontContext;
|
||||
use font_context::{FontContext, FontContextInfo};
|
||||
use opts::Opts;
|
||||
use render_context::RenderContext;
|
||||
|
||||
|
@ -159,9 +159,11 @@ impl<C: RenderListener + Send,T:Send+Freeze> RenderTask<C,T> {
|
|||
port: port,
|
||||
compositor: compositor,
|
||||
constellation_chan: constellation_chan,
|
||||
font_ctx: ~FontContext::new(opts.render_backend.clone(),
|
||||
false,
|
||||
profiler_chan.clone()),
|
||||
font_ctx: ~FontContext::new(FontContextInfo {
|
||||
backend: opts.render_backend.clone(),
|
||||
needs_font_list: false,
|
||||
profiler_chan: profiler_chan.clone(),
|
||||
}),
|
||||
opts: opts,
|
||||
profiler_chan: profiler_chan,
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue