On 4/28/14, 6:02 PM, Keegan McAllister wrote:
Ultimately I'm sort of pessimistic about table-less interning, because it 
proposes to speed up parsing at the expense of layout.

A thought.

If the goal is to speed up parsing in a separate task by avoiding contention on a table, have we considered a setup where we do part of the work of interning (e.g. computing the hashcode) in the parsing task but then leaving things in that state and finishing up the interning when we ship the data from the parsing task to the task that ends up using the data?

This is similar to the approach the JS engine is using for its off-main-thread parsing in Gecko: there's a fixup step when the parsed representation is shipped back to the thread that requested the parse.

One issue there is that layout and dom might to share the table, depending on where we do the "finish up" step of CSS parsing. Is the plan for that to be in the layout task or the DOM task, or sometimes one and sometimes the other?

Storing small strings immediate and using a table for the rest seems promising, 
though.

Agreed.

I also liked the idea of using Gecko to gather information about interned 
strings.

I'm happy to write up some patches here if people know what info we want to gather.

-Boris
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to