Could you, please, write more details about the type of data being rendered? As I am preparing for 0.8, I actually started streamlining some of the code and turns out that even with contracts and no futures it can perform nicely. I tried 10 columns x 23000 rows table for testing and on i7-1160G7 got:
cpu time: 15916 real time: 17002 gc time: 808
Not bad for a start.
I would appreciate to know:
- the number of columns in your test-case
- their minimum, maximum, and average widths
- whether there are multi-line cells used
I'd like to replicate that and see for myself what can be done before focusing on lazy evaluation and parallel processing (which is definitely post-0.8 feature).
Also the cell clipping/wrapping/re-flowing and the ability to specify fixed column widths is already there. That should help too.
I've just released 0.8.2 which computes certain values (like column widths) more efficiently.
@jtp - could you give it a try with that 23k rows table and share results? Also if you could provide me with more details about that test case I would really appreciate that.
You can also specify fixed column widths and wrapping/clipping/re-flowing of cell contents:
ββββββββββββ³βββββ³βββββ³βββββ³βββββ³ββββββββββββ³βββββ³βββββ³βββββ³βββββββββββββββββββββ
β βr0c1βr0c2βr0c3βr0c4β r0c5 βr0c6βr0c7βr0c8β r0c9 β
β£βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ«
β β β β βr1c4β r1c5βr1c6βr1c7βr1c8β Lorem ipsum dolorβ
β β β β β β β β β β sit amet,β
β β β β β β β β β β consecteturβ
β β β β β β β β β βadipiscing elit, sedβ
β β β β β β β β β β do eiusmod temporβ
β β β β β β β β β βincididunt ut laboreβ
β β β β β β β β β β et dolore magnaβ
β β β β β β β β β β aliqua. Ut enim adβ
β β β β β β β β β β minim veniam, quisβ
β β β β β β β β β βnostrud exercitationβ
β β β β β β β β β βullamco laboris nisiβ
β β β β β β β β β β ut aliquip ex eaβ
β β β β β β β β β β commodo consequat.β
β β β β β β β β β β Duis aute irureβ
β β β β β β β β β β dolor inβ
β β β β β β β β β β reprehenderit inβ
β β β β β β β β β βvoluptate velit esseβ
β β β β β β β β β β cillum dolore euβ
β β β β β β β β β β fugiat nullaβ
β β β β β β β β β β pariatur. Excepteurβ
β β β β β β β β β β sint occaecatβ
β β β β β β β β β β cupidatat nonβ
β β β β β β β β β β proident, sunt inβ
β β β β β β β β β β culpa qui officiaβ
β β β β β β β β β βdeserunt mollit animβ
β r1c0βr1c1βr1c2βr1c3β β β β β β id est laborum.β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
β r2c0βr2c1βr2c2βr2c3βr2c4β r2c5βr2c6βr2c7βr2c8β r2c9β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
β r3c0βr3c1βr3c2βr3c3βr3c4β r3c5βr3c6βr3c7βr3c8β r3c9β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
β β β β βbig βbig βr4c6βr4c7βr4c8βr4c9 β
β β β β βbiggβbigger β β β β β
β β β β βer βthe biggestβ β β β β
β β β β βthe β β β β β β
β β β β βbiggβ β β β β β
βr4c0 βr4c1βr4c2βr4c3βest β β β β β β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
βr5c0 βr5c1βr5c2βr5c3βr5c4βr5c5 βr5c6βr5c7βr5c8βr5c9 β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
βr6c0 βr6c1βr6c2βr6c3βr6c4βr6c5 βr6c6βr6c7βr6c8βr6c9 β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
βr7c0 βr7c1βr7c2βr7c3βr7c4βr7c5 βr7c6βr7c7βr7c8βr7c9 β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
βr8c0 βr8c1βr8c2βr8c3βr8c4βr8c5 βr8c6βr8c7βr8c8βr8c9 β
β£ββββββββββββββββΌβββββΌβββββΌβββββΌββββββββββββΌβββββΌβββββΌβββββΌβββββββββββββββββββββ¨
βr9c0 βr9c1βr9c2βr9c3βr9c4βr9c5 βr9c6βr9c7βr9c8βr9c9 β
ββββββββββββ»βββββ·βββββ·βββββ·βββββ·ββββββββββββ·βββββ·βββββ·βββββ·βββββββββββββββββββββ
1 Like