------=_20040914011153_23758 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit >> You're getting ahead of yourself, but no problem w/the move itself. >> However, plastik needs some performance work. > To be honest, I didn't notice these general performance problems. I am not sure they're noticeable, they're easily measurable. > So if you could help me identifying them, I would love trying to improve > this situation. Please see the attached .cpp file; apologies for the uglyness, not meant to be any sort of production code. This is basically what I used to tune keramik --- it just hammers on PE_ButtonCommand which for Ker hits the core rendering path -- and I think Plastik is similar with its bevel rendering accessible from here and occuring all over the place (please correct me if I am wrong) Here, when I run this with Keramik, I get it finishing in 26.5 seconds, of which 15.5 are in-process (that's the "clock:" line, the portions is -way- too high, likely due to all the temporary TilePainter objects; I hope nextgen designs I do can eliminate that; hard to do w/the current codebase). Light3 comes in at much quicker 9.2 seconds... Plastik takes 200 seconds to run this app here, with 88 in-process, which is 7.5 times slower than keramik, and 21.7 times slower than Light3. A candidate for a drag on speed are all the save()/restore() calls, but I am not sure: for some reason I recall these functions as being slow, but I don't have a rationale. -Maks ------=_20040914011153_23758 Content-Type: application/octet-stream; name="TestBtnSpd.cpp" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="TestBtnSpd.cpp" I2luY2x1ZGUgPHFhcHBsaWNhdGlvbi5oPgojaW5jbHVkZSA8cWltYWdlLmg+CiNpbmNsdWRlIDxx cGFpbnRlci5oPgojaW5jbHVkZSA8cXBpeG1hcC5oPgojaW5jbHVkZSA8cXN0eWxlLmg+CiNpbmNs dWRlIDxxc3R5bGVmYWN0b3J5Lmg+CgojaW5jbHVkZSA8dGltZS5oPgojaW5jbHVkZSA8c3lzL3Rp bWViLmg+IAojaW5jbHVkZSA8aW9zdHJlYW0+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1h aW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQp7CglRU3RyaW5nIHN0eWxlID0gImtlcmFtaWsiOwoJ UUFwcGxpY2F0aW9uIHFhcHAoYXJnYywgYXJndik7CgkKCWlmIChhcmdjID09IDIpCgkJc3R5bGUg PSBhcmd2WzFdOwoJY291dDw8IlRlc3Rpbmcgc3R5bGU6Ijw8c3R5bGUubGF0aW4xKCk8PCJcbiI7 CgkKCVFTdHlsZSAqczEgPSBRU3R5bGVGYWN0b3J5OjpjcmVhdGUoc3R5bGUpOy8va2VyYW1payIp Oy8vImhpZ2hjb2xvciIpOy8vKTsKCVFXaWRnZXQgZGVzdDsKCWRlc3QucmVzaXplKDMwMCwzMDAp OwoJZGVzdC5zaG93KCk7CgkvL1FQaXhtYXAgZGVzdCgzMDAsMzAwKTsKCVFQYWludGVyIHAoJmRl c3QpOwoJCgkvL2ZvciAoaW50IGM9MDsgYzw5MzMzMzsgYysrKQoJLy97fQoJCgkKCWNsb2NrX3Qg c3RpbWUgPSBjbG9jaygpOwoJdGltZWIgYXN0YXJ0LCBhZW5kOwoJZnRpbWUoJmFzdGFydCk7CgkK CWNvbnN0IGludCBsZW4gPSAyNTAwMDsKCWludCB3OwoJZm9yIChpbnQgcnVuID0gMDsgcnVuIDwg bGVuOyBydW4rKykKCXsKCQl3ID0gMDsKCQlmb3IgKGludCB4PTMwOyB4PDMwMDsgeCs9MTApCgkJ ewoJCS8vZm9yIChpbnQgeT0xMDsgeTwzMDA7IHkrKykKCQlzMS0+ZHJhd1ByaW1pdGl2ZShRU3R5 bGU6OlBFX0J1dHRvbkNvbW1hbmQsICZwLCBRUmVjdCgwLDAseCw0MCksCgkJCQkJCQkJCVFBcHBs aWNhdGlvbjo6cGFsZXR0ZSgpLmFjdGl2ZSgpLCAKCQkJCQkJCQkJUVN0eWxlOjpTdHlsZV9FbmFi bGVkKTsKCQkJdyArPSB4OwoJCX0KCX0KCWNsb2NrX3QgZXRpbWUgPSBjbG9jaygpOwoJZnRpbWUo JmFlbmQpOwoJLy90aW1lX3QgYWVuZD10aW1lKDApOwoJCglzdGQ6OmNvdXQ8PCJDbG9jazoiPDwo ZmxvYXQpKGV0aW1lLXN0aW1lKS9DTE9DS1NfUEVSX1NFQzw8IlxuIjsKCQoJCgkKCWxvbmcgbG9u ZyB0aW1lX2RpZmYgPSAoYWVuZC50aW1lIC0gYXN0YXJ0LnRpbWUpKjEwMDArYWVuZC5taWxsaXRt IC0gYXN0YXJ0Lm1pbGxpdG07CgkKCXN0ZDo6Y291dDw8IlRvdGFsOiI8PChmbG9hdCh0aW1lX2Rp ZmYpLzEwMDApPDwiXG4iOwoJZmxvYXQgZmlsbFJhdGUgPSBsZW4qNDAqdy8oZmxvYXQodGltZV9k aWZmKS8xMDAwKTsKCXN0ZDo6Y291dDw8IkZpbGxyYXRlLCBwaXhlbC9zZWM6Ijw8ZmlsbFJhdGU8 PCJcbiI7CgkvL2Rlc3QuY29udmVydFRvSW1hZ2UoKS5zYXZlKCJpbWFnZS5wbmciLCJQTkciKTsK Cn0K ------=_20040914011153_23758--