--- Log opened Sat May 16 00:00:17 2009 20090516 00:02:45< Soliton> seems like memory usage for wesnothd just linearly increased over the last 8h: http://www.wesnoth.org/collection3/bin/graph.cgi?hostname=wesnoth.wesnoth.org;plugin=processes;plugin_instance=wesnothd-1.6;type=ps_rss;begin=-32000 20090516 00:05:36-!- cjhopman [n=chris@wesnoth/developer/cjhopman] has quit [Read error: 110 (Connection timed out)] 20090516 00:09:07-!- ettin_ is now known as ettin 20090516 00:11:42< zookeeper> esr, around? 20090516 00:12:07< zookeeper> boucman, around? 20090516 00:12:59< Crab_> Soliton: ouch. And, projecting from this, when will the server memory run out ? 20090516 00:14:04-!- Sirp [n=me@wesnoth/developer/dave] has joined #wesnoth-dev 20090516 00:15:45< Soliton> Crab_: 36h maybe if it really continues like that. 20090516 00:15:56< Soliton> err, 64. 20090516 00:16:20< Soliton> so about 3 days. 20090516 00:16:24< Crab_> Soliton: that's good. we still have time to watch it :) 20090516 00:17:20-!- Noyga [n=lame-z@wesnoth/developer/noyga] has quit ["Quitte"] 20090516 00:19:16< Soliton> hmm, it does seem the server was restarted at least all 5 days for some time now. 20090516 00:19:26-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has quit [Remote closed the connection] 20090516 00:20:45< Crab_> Soliton: so, MP server leaks memory and has to be restarted at least once per 4-5 days ? 20090516 00:21:03< Soliton> yeah, appears that way. 20090516 00:21:09-!- thespaceinvader [n=chatzill@wesnoth/artist/thespaceinvader] has quit ["ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]"] 20090516 00:21:30< Soliton> i'm also pretty certain it happens somewhere around game::save_replay(). 20090516 00:21:47< Crab_> do we have historical data about server restarts ? (maybe, we can track the date 'when it started' ) 20090516 00:22:29-!- zookeeper [n=l@wesnoth/developer/zookeeper] has quit [] 20090516 00:22:41< Soliton> well, i'm pretty sure it started when i implemented replay saving. 20090516 00:28:04< Soliton> ok, actually it might already have been that way before. i'm not sure anymore. 20090516 00:28:16-!- stikonas [n=quassel@wesnoth/translator/stikonas] has quit [Read error: 110 (Connection timed out)] 20090516 00:30:27< Crab_> Soliton: see server/game.cpp:1205 20090516 00:30:53< Crab_> a call to history_.clear() , which leaks. it should be game::clear_history() 20090516 00:32:41< Soliton> no, that's fine. 20090516 00:32:44< Crab_> why ? 20090516 00:32:52< Soliton> you can see above that the history was already emptied. 20090516 00:33:29< Crab_> ah, yes 20090516 00:34:17< Soliton> the latest idea was that an exception is thrown which brings us out of the destructor. 20090516 00:34:36< Soliton> i was meaning to add some code to check that. 20090516 00:35:08< Soliton> save_replay() is called from ~game(). 20090516 00:35:46< Soliton> i'm not sure what exception would later be caught and not lead to an abort though. 20090516 00:36:48< Crab_> if you make a separate class to hold the history vector, it can be made more foolproof. 20090516 00:38:40< Soliton> probably a good idea. it used to leak before on advancing a game. 20090516 00:39:36-!- Zen_Clark [n=user@99-136-80-191.lightspeed.rcsntx.sbcglobal.net] has joined #wesnoth-dev 20090516 00:44:01< Soliton> from the server restarts it looks like the leak was introduced/made significant after r33301. 20090516 00:49:38< Soliton> oh, i think i know. 20090516 00:50:08< Crab_> good ) 20090516 00:52:12< Soliton> we're sending a server message to all members when destructing the game. so when someone already disconnecting that produces an exception. 20090516 00:54:15< Soliton> well, not 100% sure but that's an exception we will catch later and move on. 20090516 00:54:53< Crab_> which function produces the exception ? 20090516 00:55:07< Crab_> and, btw, can network::send_raw_data throw exceptions ? 20090516 00:56:14-!- loonycyborg [n=sergey@wesnoth/developer/loonycyborg] has quit ["Zzzzzzzzzzzzzzzzzzzzzzzzzzzz"] 20090516 00:56:26< Soliton> that is the question yeah, looks like maybe not. 20090516 00:56:41< Soliton> check_error() throws it. 20090516 00:58:26-!- loonybot [n=loonybot@wesnoth/bot/loonybot] has quit [Remote closed the connection] 20090516 01:01:05-!- mjs-de [n=mjs-de@vpw.wh.Uni-Dortmund.DE] has quit ["On the road again"] 20090516 01:05:45< Soliton> the introduction of that server message is fairly new too so a likely candidate but doesn't seem like it throws any exception either. 20090516 01:06:45< Crab_> they seem just to queue a network buffer (no exceptions here) and notify the network thread... 20090516 01:09:02< Soliton> i'll just wrap the game destructor into a try catch(...) so we can see if an exception is the problem to begin with. 20090516 01:09:39< Crab_> how it can possibly be reproduced with a local MP server ? 20090516 01:11:05< Soliton> and a game with the last player disconnecting. 20090516 01:11:11< Soliton> s/and/end/ 20090516 01:12:04< Crab_> should it be a 'normal' disconnect or a forced (via kill) disconnect ? 20090516 01:12:33< Soliton> i think you have to kill. 20090516 01:21:03-!- Gnutoo [n=gnutoo@host109-10-dynamic.54-79-r.retail.telecomitalia.it] has quit ["Leaving"] 20090516 01:22:42< Soliton> Sirp: graphs for wesnoth.org's resource usage: http://collectd.wesnoth.org once you're fed up looking at sar data rows. :-P 20090516 01:31:01-!- ilor_ [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 01:36:39-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 60 (Operation timed out)] 20090516 01:37:26-!- ancestral [n=ancestra@97-116-120-23.mpls.qwest.net] has joined #wesnoth-dev 20090516 01:38:36-!- cjhopman [n=chris@wesnoth/developer/cjhopman] has joined #wesnoth-dev 20090516 01:39:21< Sirp> Soliton: ahh cool 20090516 01:39:32< Sirp> Soliton: though that looks like it's claiming we use a lot of CPU 20090516 01:39:57< Soliton> Sirp: yes, stats.wesnoth.org is making mysqld use a lot. 20090516 01:40:06< Sirp> ahhhh 20090516 01:40:18< Sirp> we might need to take it down until we get something more efficient developed 20090516 01:40:27< Soliton> yeah. 20090516 01:40:31< Soliton> Sirp: also you can see a linear increase in memory use of wesnothd. 20090516 01:41:02< Soliton> http://www.wesnoth.org/collection3/bin/graph.cgi?hostname=wesnoth.wesnoth.org;plugin=processes;plugin_instance=wesnothd-1.6;type=ps_rss;begin=-43200 20090516 01:41:47< Sirp> ahh 20090516 01:43:37-!- Blueblaze [n=nick@c-98-199-143-139.hsd1.tx.comcast.net] has joined #wesnoth-dev 20090516 01:54:17-!- noy [n=Noy@wesnoth/developer/noy] has quit [Read error: 110 (Connection timed out)] 20090516 01:56:32< Crab_> night 20090516 01:57:18< Crab_> Soliton: just 'playing for a few turns and then disconnecting the client with "kill -9" does not leak (according to valgrind) 20090516 01:57:34< Soliton> Crab_: ok, thanks for the test. 20090516 01:57:43-!- Crab_ [n=Crab_@wesnoth/developer/crab] has quit ["Leaving."] 20090516 01:58:34< CIA-30> soliton * r35648 /branches/1.6/src/server/game.cpp: check if we're missing to catch an exception 20090516 02:01:20< Polarina> The new music in trunk is awesome. 20090516 02:01:55< Polarina> Better than the others. 20090516 02:03:23< ancestral> Polarina: we need musicians to develop using themes 20090516 02:03:29< ancestral> Polarina: but we'll get there 20090516 02:03:53< ancestral> Polarina: The music I concur is excellent 20090516 02:08:49-!- Tigge [n=tigge@bacchus.olf.sgsnet.se] has quit [Remote closed the connection] 20090516 02:09:19-!- Elvish_Pillage2 [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20090516 02:09:35< Polarina> I hope he does more music for Wesnoth. :) 20090516 02:10:41-!- cjhopman [n=chris@wesnoth/developer/cjhopman] has quit [Read error: 110 (Connection timed out)] 20090516 02:10:45< ancestral> Polarina: who is "he"? 20090516 02:12:29< Polarina> ancestral: Tyler Johnson. 20090516 02:12:38< ancestral> Polarina: Oh right1 20090516 02:12:44< ancestral> Silly me 20090516 02:16:43< Zen_Clark> Which songs in the trunk are new? 20090516 02:18:49-!- Polarina [n=polarina@wesnoth/translator/Polarina] has quit ["Leaving."] 20090516 02:21:29< Zen_Clark> And is there any sheet music available for the music? Would be nice if I could convince my school to play something like the Dangerous Symphony. 20090516 02:25:12-!- Elvish_Pillager [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has quit [Read error: 110 (Connection timed out)] 20090516 02:25:27-!- Chusslove [n=caslav@brsg-d9beef78.pool.mediaWays.net] has quit [Read error: 110 (Connection timed out)] 20090516 02:26:09< ancestral> Zen_Clark: Interesting you mention that 20090516 02:26:15< ancestral> Tyler Johnson's song I think 20090516 02:26:31 * ancestral is too lazy to find the forum thread. He suggests you find it if you're curious :) 20090516 02:26:54< ancestral> You might PM him for the sheet music, if it can be generated. The song is GPL so he should be able to provide something 20090516 02:27:31< Zen_Clark> Dangerous Symth' is Gianmarco Leone work if the file has the correct attributes. 20090516 02:27:45< Zen_Clark> Gianmarco Leone = Tyler? 20090516 02:28:07< ancestral> Hmmm maybe it's a different piece? 20090516 02:28:12< ancestral> I don't know 20090516 02:28:16-!- Elvish_Pillage2 [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has quit ["Hi! I'm a quit message virus vaccine. If you see a quit message virus, don't replace your quit message with it!"] 20090516 02:29:11< ancestral> Zen_Clark: check out this http://www.wesnoth.org/forum/viewtopic.php?f=14&t=25449 you might ask Tyler if he has sheet music for that 20090516 02:31:44< Zen_Clark> ancestral: O.k. Thanks. 20090516 02:31:53-!- PK [n=pk@r74-192-44-206.vctrcmta01.vctatx.tl.dh.suddenlink.net] has joined #wesnoth-dev 20090516 02:46:10-!- cjhopman [n=chris@wesnoth/developer/cjhopman] has joined #wesnoth-dev 20090516 03:11:17-!- PK [n=pk@r74-192-44-206.vctrcmta01.vctatx.tl.dh.suddenlink.net] has quit ["Java user signed off"] 20090516 03:31:10-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev --- Log closed Sat May 16 03:32:07 2009 --- Log opened Sat May 16 03:32:07 2009 20090516 03:49:19-!- ilor_ [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 03:49:32-!- boucman [n=rosen@wesnoth/developer/boucman] has quit [Remote closed the connection] 20090516 04:06:49-!- Ivanovic_ [n=ivanovic@dtmd-4db2b1bd.pool.einsundeins.de] has joined #wesnoth-dev 20090516 04:10:16-!- Appleman1234 [n=Appleman@131.181.47.8] has joined #wesnoth-dev 20090516 04:21:27-!- cjhopman [n=chris@wesnoth/developer/cjhopman] has quit [Remote closed the connection] 20090516 04:22:44-!- Zen_Clark [n=user@99-136-80-191.lightspeed.rcsntx.sbcglobal.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 20090516 04:22:50-!- Ivanovic [n=ivanovic@wesnoth/developer/ivanovic] has quit [Read error: 110 (Connection timed out)] 20090516 04:24:48-!- Ivanovic_ is now known as Ivanovic 20090516 04:27:11-!- BenUrban [n=benurban@c-68-55-19-224.hsd1.md.comcast.net] has joined #wesnoth-dev 20090516 04:31:19-!- ilor_ [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 04:38:24-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 60 (Operation timed out)] 20090516 04:54:44-!- [Relic] [n=[Relic]@adsl-76-230-212-46.dsl.milwwi.sbcglobal.net] has joined #wesnoth-dev 20090516 04:55:40< [Relic]> Hello :) 20090516 05:19:18-!- BenUrban_ [n=benurban@unaffiliated/benurban] has joined #wesnoth-dev 20090516 05:25:23-!- crimson_penguin [n=ben@wesnoth/developer/crimsonpenguin] has quit [] 20090516 05:31:25-!- ilor [n=user@atv137.neoplus.adsl.tpnet.pl] has joined #wesnoth-dev 20090516 05:34:03-!- BenUrban [n=benurban@unaffiliated/benurban] has quit [Read error: 110 (Connection timed out)] 20090516 05:35:58-!- BenUrban_ is now known as BenUrban 20090516 05:39:44-!- ancestral [n=ancestra@97-116-120-23.mpls.qwest.net] has quit [] 20090516 05:45:56-!- ancestral [n=ancestra@97-116-120-23.mpls.qwest.net] has joined #wesnoth-dev 20090516 05:50:16-!- ilor_ [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 05:52:52-!- Appleman1234 [n=Appleman@131.181.47.8] has quit [Read error: 110 (Connection timed out)] 20090516 05:55:12-!- Appleman1234 [n=Appleman@131.181.47.6] has joined #wesnoth-dev 20090516 05:56:49-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["Tengo que ir... Yeahzorz..."] 20090516 05:57:08-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20090516 06:06:28-!- Espreon_ [n=espreon@c-76-117-239-33.hsd1.pa.comcast.net] has joined #wesnoth-dev 20090516 06:06:47-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit [Read error: 104 (Connection reset by peer)] 20090516 06:09:17-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20090516 06:12:09-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit [Client Quit] 20090516 06:25:48-!- Espreon_ [n=espreon@c-76-117-239-33.hsd1.pa.comcast.net] has quit [Read error: 110 (Connection timed out)] 20090516 06:46:33-!- [Relic] [n=[Relic]@adsl-76-230-212-46.dsl.milwwi.sbcglobal.net] has quit ["Leaving"] 20090516 07:02:12-!- ancestral [n=ancestra@97-116-120-23.mpls.qwest.net] has quit ["And that’s the end of THAT chapter."] 20090516 07:02:15-!- Blueblaze [n=nick@c-98-199-143-139.hsd1.tx.comcast.net] has quit [Remote closed the connection] 20090516 07:22:31-!- Appleman1234 [n=Appleman@131.181.47.6] has quit [Read error: 110 (Connection timed out)] 20090516 07:31:28-!- Appleman1234 [n=Appleman@131.181.47.6] has joined #wesnoth-dev 20090516 08:02:25-!- Sirp [n=me@wesnoth/developer/dave] has quit ["leaving"] 20090516 08:05:18-!- Appleman1234 [n=Appleman@131.181.47.6] has quit [Read error: 60 (Operation timed out)] 20090516 08:14:48-!- voris [n=voris@c-24-16-107-149.hsd1.wa.comcast.net] has joined #wesnoth-dev 20090516 08:18:25-!- jzmer [n=jzmer@pcp061681pcs.unl.edu] has joined #wesnoth-dev 20090516 08:26:38-!- maxy [n=maxy@80-219-0-199.dclient.hispeed.ch] has joined #wesnoth-dev 20090516 08:41:41-!- silene [n=plouf@wesnoth/developer/silene] has joined #wesnoth-dev 20090516 08:42:00< silene> hi 20090516 08:42:04< voris> hi 20090516 09:03:49-!- stikonas [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 09:26:18< CIA-30> cornmander * r35649 /website/stats.wesnoth.org/wesstats/ (controllers.py evaluators.py): Added evaluator function for the X, COUNT(X) query 20090516 09:46:56-!- jzmer [n=jzmer@pcp061681pcs.unl.edu] has quit ["Lost terminal"] 20090516 09:53:06-!- mordante [n=mordante@wesnoth/developer/mordante] has joined #wesnoth-dev 20090516 09:53:21< mordante> servus 20090516 10:02:43-!- zookeeper [n=l@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20090516 10:03:41-!- zookeeper [n=l@wesnoth/developer/zookeeper] has quit [Client Quit] 20090516 10:07:11-!- zookeeper [n=l@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20090516 10:39:10-!- Chusslove [n=caslav@brsg-d9befc71.pool.mediaWays.net] has joined #wesnoth-dev 20090516 10:43:39-!- busfahrer [n=busfahre@unixboard/user/busfahrer] has joined #wesnoth-dev 20090516 10:50:30-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has joined #wesnoth-dev 20090516 10:59:21-!- boucman [n=rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20090516 11:11:24-!- mjs-de [n=mjs-de@vpw.wh.Uni-Dortmund.DE] has joined #wesnoth-dev 20090516 11:14:36-!- loonybot [n=loonybot@79.139.246.175] has joined #wesnoth-dev 20090516 11:15:43-!- loonycyborg [n=sergey@79.139.246.175] has joined #wesnoth-dev 20090516 11:19:16< boucman> silene: around ? 20090516 11:20:42-!- ilor_ [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 11:26:36-!- Elvish_Pillager [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20090516 11:39:17-!- Noyga [n=lame-z@wesnoth/developer/noyga] has joined #wesnoth-dev 20090516 11:40:00-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 11:48:32< silene> boucman: yes 20090516 11:48:49-!- Tigge [n=tigge@bacchus.olf.sgsnet.se] has joined #wesnoth-dev 20090516 11:48:59< boucman> silene: I don't know if you read our conversations with Crab about optimisation recently 20090516 11:49:08< silene> more or less 20090516 11:50:08< boucman> basically, I have managed to reach the same level of optimisations without disabling ofscreen sounds and all, so I wanted to make sure you are OK, before I revert your change 20090516 11:53:05< silene> boucman: no, i'm still not ok; as long as my patch is a noticeable speedup, i can't agree with it being removed (and keep in mind that the time needed for an AI turn is quadratic in the slowness of the computer, so the slower the computer, the more dramatic the speedup is, and Crab_'s computer is hardly considered as a slow one) 20090516 11:53:41< boucman> silene: with your patch the turn is 9'40 with my changes it's 10'05 20090516 11:53:52< boucman> and I don't break anything 20090516 11:54:35< silene> boucman: come on, give me the times with and without my patch, so that we compare things that can be compared 20090516 11:54:56< boucman> huh ? 20090516 11:55:01< boucman> isn't that what I just gave ? 20090516 11:55:30< silene> so you are saying that 9'40 includes your changes? it wasn't clear from your sentence 20090516 11:55:41< boucman> no it doesn't 20090516 11:55:48< boucman> ok, I understand what you mean 20090516 11:56:07< boucman> but I don't have that particular time, Crab didn't run that test 20090516 12:17:09-!- Baufo [n=quassel@62-47-146-28.adsl.highway.telekom.at] has joined #wesnoth-dev 20090516 12:50:20-!- Crab_ [n=Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20090516 12:50:29< Crab_> hi 20090516 12:50:47< boucman> hey Crab_ 20090516 12:51:04< Crab_> boucman: you and silene wanted me to test something ? 20090516 12:51:29< boucman> yes, could you test my changes, but with silene's changes too ? 20090516 12:52:06< Crab_> give me a revision number of silene's changes, please 20090516 12:52:21< Crab_> it was the second one ? with 'tile nearby on screen' ? 20090516 12:52:27< Crab_> s/nearby/nearly 20090516 12:52:47< silene> Crab_: yes, you can just make tile_nearby_on_screen returns always true 20090516 12:53:15< boucman> Crab_: based on my patch, reverting only game_display.cpp should do the trick 20090516 12:54:00< silene> boucman: no, there was an improvement from alink since then 20090516 12:54:22< boucman> ok 20090516 12:57:23< Crab_> silene: and on which cpu speed I should test ? I can test with 600MHz - 2GHz 20090516 12:57:43< boucman> Crab_: the same one you used to measure previously, it's for comparison purpose 20090516 12:58:18< silene> Crab_: if you can test both the best and the worst, it would be great, since the improvement is not linear, so it would give us a clue as to how much speedup it is for smaller computers 20090516 12:58:27< silene> s/smaller/slower/ 20090516 12:58:54< Crab_> silene: yes, I can. although it will take some time :) 20090516 12:58:59< boucman> Crab_: I have a newer version of my patch available too, which should also improve things quite a bit, 20090516 12:59:07< boucman> not sure how you can enter it in your testing plans 20090516 13:00:06< Crab_> boucman, silene: then give me the patches :) 20090516 13:00:32< silene> Crab_: mine is revision 35583 20090516 13:00:38< Crab_> ok 20090516 13:01:00< boucman> http://wesnoth.pastebin.com/m2e1797a1 20090516 13:01:08< boucman> (should apply on clean trunk) 20090516 13:01:12< Crab_> boucman: ok 20090516 13:01:33-!- Elvish_Pillage2 [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20090516 13:01:57-!- Baufo [n=quassel@wesnoth/developer/baufo] has quit [Remote closed the connection] 20090516 13:02:30< Crab_> boucman: I will test 4 cases: "your patch on 2GHz, your patch on 0.6GHz, your patch+silene's patch on 2GHz, your patch+silene's patch on 0.6GHz" 20090516 13:02:33< silene> Crab_: careful when applying boucman's patch, it will revert 35583, so you won't test the effect of my patch 20090516 13:02:55< boucman> Crab_: sounds good 20090516 13:03:09< Crab_> silene: I will firstly apply boucman's patch, then your's. 20090516 13:03:53-!- Elvish_Pillager [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has quit [Read error: 110 (Connection timed out)] 20090516 13:09:55-!- stikonas [n=quassel@wesnoth/translator/stikonas] has quit [Read error: 54 (Connection reset by peer)] 20090516 13:12:01< Crab_> boucman: patch partially failed. http://wesnoth.pastebin.com/m5a0893d7 20090516 13:12:26< boucman> I just noticed, I wan't up to date on svn, fixing 20090516 13:13:55< boucman> http://wesnoth.pastebin.com/me27bb24 20090516 13:14:20-!- Gnutoo [n=gnutoo@host109-10-dynamic.54-79-r.retail.telecomitalia.it] has joined #wesnoth-dev 20090516 13:15:13< Crab_> boucman: good. compiling... 20090516 13:15:36< boucman> Crab_: ?? 20090516 13:16:45< Crab_> boucman: good="the new patch applied ok", compiling="compiling wesnoth to test with the patch" 20090516 13:16:53< boucman> ok 20090516 13:16:54< boucman> :) 20090516 13:20:20< silene> Crab_: in your patch about known states; any reason you didn't use a simple bitset instead of std::map? the speedup would have been much more impressive 20090516 13:20:38< Crab_> silene: i use a std::map ? 20090516 13:20:57< silene> perhaps i saw wrong, let me check 20090516 13:21:56< Crab_> Last time I checked it, I used a vector (which is specialized as bitset, afaik) 20090516 13:22:06< silene> yes, sorry, my mistake 20090516 13:22:29< silene> that being said, a simple bitset would still be faster, since it would not involve any dynamic allocation 20090516 13:22:41< Crab_> silene: why dynamic allocation ? 20090516 13:22:59< Crab_> silene: I allocate at unit construction only 20090516 13:23:36< Crab_> with all other stuff that is allocated there, I don't think a small vector will matter much... 20090516 13:23:59< silene> Crab_: the allocation itself is not what is costly, the indirection is 20090516 13:24:31< zookeeper> boucman, when the standing anim/frame is used as padding between combat anims, it gets drawn at the original non-combat layer (behind great trees, castle towers etc). would you be able to make it be drawn on top of all terrain just like the combat anims _when_ it's used as the fallback anim between combat anims? 20090516 13:25:30< boucman> zookeeper: hmm I think it's a little more subtil than that :P 20090516 13:26:04< boucman> it's when it's padding as port of a defend anim 20090516 13:26:25< boucman> and defend anim are drawn at the original layer because we want them to be "in the castle" 20090516 13:27:09< Crab_> silene: ok. yes, bitset can be used too, since the size is fixed. 20090516 13:28:09< zookeeper> boucman, they are? it looked to me as if only the padding bits were drawn at the original layer 20090516 13:28:19< boucman> zookeeper: I'll check 20090516 13:28:41< zookeeper> anyways, i think the whole combat should be drawn at the top layer, since otherwise you'll just get the units' feet flipping in and out behind some castle towers 20090516 13:28:58-!- Gnutoo [n=gnutoo@host109-10-dynamic.54-79-r.retail.telecomitalia.it] has left #wesnoth-dev ["Leaving"] 20090516 13:29:05< boucman> zookeeper: i'd tend to agree with that, not sure why we did it differently 20090516 13:30:59< zookeeper> it's just a little glitch that tends to catch my eye when playing 20090516 13:32:20< zookeeper> AFAIK it works the same way in 1.6 and trunk, so if you happen to fix it i guess it should be ported to 1.6 as well 20090516 13:32:42< boucman> zookeeper: I confirm it's the whole defense anim 20090516 13:33:04< boucman> (which has the interesting side effect of guaranteeing that the attack anim will always be on top) 20090516 13:33:23< boucman> and it's a "feature" as in : we conciously decided to do it that way 20090516 13:33:29< boucman> so, should I change it ? 20090516 13:34:18< zookeeper> well, i'd say so, but maybe better to check with mordante first in case we're forgetting something important here. 20090516 13:34:58< boucman> zookeeper: that's an area I know well, the only thing is that i'm not sure we want to have the defense anim over castles, it looks weird too 20090516 13:35:44< zookeeper> well, not any more weird than for example a ranged anim over castles, does it? 20090516 13:36:05< boucman> zookeeper: you can test by setting layer=50 for defense anims 20090516 13:36:25< boucman> maybe you could try a little and tell me what you think, if you're still convinced i'll do the change 20090516 13:36:34< zookeeper> although i guess one could argue that all combat anims should by default be drawn at the original layers and melee anims (or others with unit sliding) should be the only exception 20090516 13:36:35< boucman> (I don't really mind, but since it's easy to test...) 20090516 13:36:52< zookeeper> sure, i can toy around with it tonight (about to leave in a moment) 20090516 13:38:08< boucman> zookeeper: melee anims only is possible too 20090516 13:38:25< boucman> (unless you want defense melee to be on top too, in which case it's a bit more complicated 20090516 13:39:13< zookeeper> i'll have to test it out, but melee anims as the only exception sounds like it might work 20090516 13:42:39< mordante> zookeeper, no you're not forgetting anything 20090516 13:42:56< mordante> you can move anims to different layers if you want 20090516 13:45:32< zookeeper> ok, great 20090516 13:45:34< zookeeper> i'm out now 20090516 13:45:41-!- zookeeper [n=l@wesnoth/developer/zookeeper] has quit [] 20090516 13:45:46< silene> Crab_: bool is_inv = get_state(STATE_HIDDEN && get_ability_bool(hides,loc)); 20090516 13:47:10-!- Baufo [n=quassel@62-47-146-28.adsl.highway.telekom.at] has joined #wesnoth-dev 20090516 13:47:42< Crab_> silene: thanks for spotting 20090516 13:47:55-!- Baufo [n=quassel@wesnoth/developer/baufo] has quit [Remote closed the connection] 20090516 13:49:20< Crab_> silene: my luck is that && doesn't increase the value, so no segfaults :) 20090516 13:49:35< boucman> bbiam 20090516 13:58:34< Ivanovic> hi 20090516 14:06:47< mordante> hi Ivanovic 20090516 14:06:49-!- stikonas [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 14:14:47-!- elias [n=allefant@allegro/developer/allefant] has joined #wesnoth-dev 20090516 14:18:11-!- stikonas [n=quassel@wesnoth/translator/stikonas] has quit [Read error: 104 (Connection reset by peer)] 20090516 14:19:28-!- EdB [n=edb@143.117.88-79.rev.gaoland.net] has joined #wesnoth-dev 20090516 14:41:17< boucman> Crab_: how is it going ? 20090516 14:42:58< Crab_> in progress 20090516 14:43:01-!- stikonas [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 14:43:15< boucman> k 20090516 14:50:55-!- voris [n=voris@c-24-16-107-149.hsd1.wa.comcast.net] has quit ["Leaving"] 20090516 15:15:57-!- euschn [n=chatzill@wesnoth/developer/euschn] has joined #wesnoth-dev 20090516 15:16:01< euschn> hi 20090516 15:22:56-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 15:28:33< Crab_> boucman: ok, 1st part (your patch) finished. 9 minutes 34 seconds on 2GHz, 62 minutes on 0.6GHz 20090516 15:29:06< boucman> ok, sounds good 20090516 15:32:18< Ivanovic> ugh, 62mins is *MUCH* 20090516 15:32:40-!- ABCD [n=ABCD@wikipedia/ABCD] has quit [Read error: 113 (No route to host)] 20090516 15:32:42< boucman> Crab_: what were your usual times on that machine ? 20090516 15:33:07< Crab_> boucman: what's *usual times* ? 20090516 15:33:22< boucman> it's the first time you play on that machine ? 20090516 15:33:28< Ivanovic> Crab_: without any patches 20090516 15:33:54< Crab_> boucman: no, it's the same notebook. I've changed cpu speed from 2000Hz to 600Hz for the second test. 20090516 15:34:10< boucman> k 20090516 15:34:14< Crab_> boucman: your *latest* patch doesn't show much improvement. 20090516 15:34:14< Ivanovic> Hz? 20090516 15:34:17< Ivanovic> or MHz? 20090516 15:34:19< Ivanovic> ;) 20090516 15:34:23< Crab_> MHz, of course ;) 20090516 15:34:29< boucman> Crab_: not a suprise 20090516 15:34:43< Crab_> Ivanovic: 'trunk' time is about 9-40 20090516 15:34:52< boucman> I have now removed most of the problems, I'm really scrapping the bottom now, 20090516 15:35:39< Crab_> now I will add silene's patch on top 20090516 15:41:21-!- ilor_ [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 15:43:08< CIA-30> ivanovic * r35650 /trunk/po/ (4 files in 4 dirs): updated Chinese (Traditional) and Italian translation 20090516 15:43:15< CIA-30> ivanovic * r35651 /branches/1.6/ (6 files in 5 dirs): updated Chinese (Traditional) and Italian translation 20090516 15:45:40< boucman> Crab_: btw, if you have generated a png... :) 20090516 15:46:30< Crab_> yes, later 20090516 15:46:41-!- thespaceinvader [n=chatzill@wesnoth/artist/thespaceinvader] has joined #wesnoth-dev 20090516 15:48:24< Crab_> with silene's patch, on 2000MHz: 8 minutes 13 seconds 20090516 15:56:47-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has quit [Remote closed the connection] 20090516 15:59:34-!- Polarina [n=polarina@wesnoth/translator/Polarina] has joined #wesnoth-dev 20090516 16:09:58-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has joined #wesnoth-dev 20090516 16:21:15< CIA-30> soliton * r35652 /trunk/src/server/game.cpp: check if we're missing to catch an exception 20090516 16:21:18< CIA-30> soliton * r35653 /trunk/utils/mp-server/ (run_campaignd run_server): minor readability tweaks 20090516 16:27:15-!- stikonas [n=quassel@wesnoth/translator/stikonas] has quit [Remote closed the connection] 20090516 16:36:39-!- crimson_penguin [n=ben@64.201.60.216] has joined #wesnoth-dev 20090516 16:46:03-!- ilor [n=user@wesnoth/developer/ilor] has quit [Remote closed the connection] 20090516 16:46:16-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 16:48:26-!- Sirp [n=me@wesnoth/developer/dave] has joined #wesnoth-dev 20090516 16:49:38< Crab_> boucman: with silene's patch, on 600MHz: 57 minutes 38 seconds. 20090516 16:50:56< boucman> silene: see above 20090516 16:51:20-!- EdB [n=edb@143.117.88-79.rev.gaoland.net] has quit [Remote closed the connection] 20090516 16:51:37< Crab_> boucman: 'silene's patch' already includes the name ;) 20090516 16:51:44< boucman> :P 20090516 16:51:58< Soliton> so actually less improvement for slow computers. 20090516 16:52:31< boucman> Soliton: i'm suprised by the huge diff on fast computer... 20090516 16:52:56< Polarina> What did the patch change? 20090516 16:53:18< boucman> Crab_: since it's about visibility, you sure you didn't scroll during testing or something like that ? 20090516 16:53:27< boucman> Polarina: it disables off-screen animations 20090516 16:53:36< Polarina> boucman: Cool. :) 20090516 16:53:44< boucman> no, not cool 20090516 16:53:52< Crab_> boucman: I've been working on a second computer, so notebook was untouched for 99% of the time. so, ai scrolled to actions itself. 20090516 16:53:52< Polarina> boucman: Why? 20090516 16:54:10-!- alink [n=alink@wesnoth/developer/alink] has joined #wesnoth-dev 20090516 16:54:11< boucman> by disabling off-screen animations without precuations, you prevent large units from working correctly, and off-screen actions don't do any noise 20090516 16:54:22< boucman> Crab_: ok 20090516 16:54:23< Polarina> I see. 20090516 16:54:27< alink> hi 20090516 16:54:39< boucman> Crab_: did you generate the png ? 20090516 16:54:44-!- stikonas [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 16:55:02< Crab_> doing it atm 20090516 16:55:07< boucman> k 20090516 16:55:11< Crab_> hi alink 20090516 16:55:21< alink> hello Crab_ 20090516 16:55:26 * boucman should really install the google tools, but boucman is about to reinstall his whole distro anyway 20090516 16:56:09< alink> sneaky boucman who stop using functions just few hours after I optimized/fixed them ;-) 20090516 16:56:22< boucman> alink: ?? 20090516 16:56:23< alink> (days ago, but i just notice it now) 20090516 16:56:49< boucman> what function ? 20090516 16:57:17< alink> the idea was to ignore overlapping propagation when off-screen (overlapping is purely visual) 20090516 16:58:02< boucman> alink: actually, we did it at some point, but I had to break/restore the feature during my different optimisations 20090516 16:58:20< boucman> (invalidate_rect actually invalidates the intersection of the rect and the screen) 20090516 16:58:39< boucman> but with the caching of invalidation zone, we don't call invalidate_rect anymore 20090516 16:58:50< alink> boucman: not important, if we solve the off-screen standing/idle anim problem, it will only only help off-screen fight, which is is less urgent 20090516 16:59:00-!- Dragonking [n=dk@wesnoth/developer/dragonking] has joined #wesnoth-dev 20090516 16:59:11< boucman> off-screen fight work with my current patch 20090516 16:59:20< boucman> and I did disable off-screen idle and standing anims 20090516 16:59:31< alink> (i said help, not fix) ;-) 20090516 16:59:34< Ivanovic> Chusslove: could you please rerun the check for vars and ^ in translateable strings? 20090516 16:59:37< boucman> :P 20090516 17:00:04< Ivanovic> Chusslove: that is i tried fixing the probs in en_GB but am not sure if i caught all of them 20090516 17:00:27< Ivanovic> (and am confident that several other langs worked on this stuff, too) 20090516 17:01:38< silene> boucman: are you sure you disabled idle and standing animations for off-screen units? if you did, my patch should have absolutely no effect; you may have messed somewhere 20090516 17:01:45< Chusslove> Ivanovic: If it would take you four shell lines to run it on your machine, would you like to do it? :) 20090516 17:02:19< alink> boucman : did you noticed my debug tool to count invalidation (and off-screen invalidation) ? 20090516 17:02:21< boucman> silene: you disable slightly higher than I do in the calling stack, but I'll double check 20090516 17:02:30< boucman> yes 20090516 17:02:45< boucman> alink: with my latest change I had almost no off-screen invalidations 20090516 17:03:01< alink> good 20090516 17:04:30< boucman> alink: tbh I'm not sure what number is off-screen inval, i assume it's the number between brackets 20090516 17:04:46< Ivanovic> nah 20090516 17:05:01< Chusslove> Ok, will run it. 20090516 17:06:19< alink> boucman: yes it's that one (visible only if not zero) 20090516 17:06:39< silene> boucman: that being said, your patch must have at least caught a good part of the off-screen units, since the speed-up of my patch did not scale with the slowness of the processor; so we just have to find the remaining ineffiency before getting rid of my patch 20090516 17:06:39< boucman> are off-screen vilages causing invalidations ? 20090516 17:07:00< boucman> silene: yes, I'm waiting for Crab_'s png 20090516 17:07:12< Crab_> boucman: it's a jpg, actually :) 20090516 17:07:17< boucman> :P 20090516 17:07:47< Crab_> of course it's png, if by png you mean "profiling nice graph" :) 20090516 17:07:54< boucman> hehe 20090516 17:08:45< loonycyborg> Why not svg? :P 20090516 17:08:54< alink> boucman: no off-screen village don't cause invalidation 20090516 17:08:59< boucman> k 20090516 17:09:05< alink> boucman: same for animated terrain 20090516 17:10:06< Crab_> loonycyborg: source is .ps, if you give me a command to make a .svg out of it, I can do so :) 20090516 17:10:40< loonycyborg> What tool are you using to process the .ps? 20090516 17:11:12< Crab_> loonycyborg: gs -sDEVICE=jpeg -r120 -dBATCH -dNOPAUSE -sOutputFile=out.jpg in.ps 20090516 17:11:22< boucman> ok, I seem to properly catch what I want to catch 20090516 17:11:42< boucman> and there is no off-screen invalidation in test scenario, i'll look with Crab_'s bat frenzy save 20090516 17:12:01< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_b2000.jpg 20090516 17:12:01< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_b600.jpg 20090516 17:12:01< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_bs2000.jpg 20090516 17:12:01< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_bs600.jpg 20090516 17:12:06< alink> boucman: but one thing that my previous idea could still help (ignoring overlapping when offscreen) is to stop a chain-reaction to propagate off-screen. I will start to check how re-add it in the current code 20090516 17:12:08< loonycyborg> Try 'convert in.ps out.jpg instead' :P 20090516 17:12:37< boucman> alink: we don't propagate off-screen with my patch 20090516 17:13:05< boucman> (there might be some border cases, but basicaly, an anim can only invalidate its own hex when offscreen) 20090516 17:13:13< alink> boucman: ah ok, sorry, I didn't svn up yet :-) 20090516 17:13:54< Crab_> loonycyborg: where (in Debian GNU/Linux) I can get convert' ? 20090516 17:14:03< boucman> ImageMagick 20090516 17:14:19< loonycyborg> It seems to support both .ps and .jpeg. 20090516 17:14:27< Crab_> thanks 20090516 17:17:50< silene> Crab_: don't you have another output format than .ps? for instance a gprof file? 20090516 17:18:05< silene> (i'm asking since there a lot of tools out there to display gprof files) 20090516 17:18:13< Crab_> silene: yes, I have gprof files, as well. 20090516 17:19:38-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 60 (Operation timed out)] 20090516 17:19:51< boucman> alink: what does it mean when I have 0.2 offscreen invalidations ? 20090516 17:20:12< alink> that's the mean number by frame 20090516 17:20:20< boucman> k 20090516 17:20:39< alink> we only update the showed number after 10 frame 20090516 17:21:17< boucman> ok, on the bat map, I get between 0.2 and 5 20090516 17:21:27< boucman> not sure where these invalidations come from... 20090516 17:21:33< alink> if i just change the number each frame, it is not readable 20090516 17:21:46< boucman> alink: yes, it makes sense 20090516 17:21:54< silene> Crab_: then you can do "gprof2dot.py something | dot -Tsvg -o output.svg" for instance 20090516 17:22:44-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 17:24:00< boucman> that is very weird 20090516 17:24:19< Crab_> silene, ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_b2000.gprof 20090516 17:24:19< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_b600.gprof 20090516 17:24:19< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_bs2000.gprof 20090516 17:24:19< Crab_> ftp://ftp.terraninfo.net/wesnoth/ai_2009may16_r35649_bs600.gprof 20090516 17:24:37< Crab_> boucman: what's weird ? 20090516 17:24:40< boucman> in b2000 we spend 25.5% in display::draw in bs2000 we spend 33.6% 20090516 17:24:48< boucman> I can't make sense of that 20090516 17:26:01< boucman> it is as if we spen less time animating without silene's patch (which doesn't make sense) but the AI takes more time calculating, yelding overall longer turns (which makes even less sense) 20090516 17:26:04< silene> boucman: why not? since the overall time is smaller, it's expected that i/o (which are incompressible) show higher 20090516 17:26:42< boucman> silene: I assumed that the time spend in the AI was more or less constant, and that the difference in time should be only in animations 20090516 17:27:08< alink> boucman: seems that off-screen idle still invalidate, is it possible ? (not from code, but from testing) 20090516 17:27:27< boucman> alink: i'll double check 20090516 17:27:27< silene> boucman: the AI time is constant, the draw time is constant, the invalidation logic time is reduced; so the proportion of the draw time goes up 20090516 17:27:51< boucman> the invalidation logic for animations is contained in display::draw 20090516 17:28:04< Crab_> boucman: display::draw_init is handled differently on those graphs.... 20090516 17:28:25< silene> boucman: on my computer, which is faster than Crab_'s, drawing time goes up to 60% 20090516 17:28:34< boucman> yes, I just noticed while mentionning it :P sorry 20090516 17:28:46< alink> boucman: wait, maybe not, the random of idle make it hard to be sure, i check with more units 20090516 17:32:24< boucman> alink: checking by instrumenting the code 20090516 17:33:12< alink> yeah, but i doesn't seems to be able to reproduce what i think i saw :-/ 20090516 17:34:46< boucman> Crab_: unite::invalidate seems to spend lots of time in unit::clear_status_cache is that normal ? 20090516 17:35:35< alink> boucman: but about idle, i noticed something, when not idling (if it's the time to do so), a unit seems to need a redraw when doing its set_standing 20090516 17:36:08< boucman> yes, that's because we restart the standing anim 20090516 17:36:16< alink> boucman: visible with high idle frequency + :sunset + a lot of unit on screen next to enemy (to prevent idling) 20090516 17:36:19< boucman> (which is not really usefull, admitedly 20090516 17:36:41-!- ilor [n=user@wesnoth/developer/ilor] has quit [Remote closed the connection] 20090516 17:36:46< Chusslove> Ivanovic: There's also that check if original has trailing space after colon, e.g. "Difficulty: ", to warn if the translation is missing trailing space. But it produces a lot (>600) warnings, so I've set it to run only for explicitly listed languages. Do you want German in there? 20090516 17:36:55-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 17:37:25< boucman> alink: please remind me about that later, I have too many changes pending right now, and I don't want to mess up 20090516 17:37:41< alink> boucman: ok np 20090516 17:37:44< Chusslove> (Before I send the report to list.) 20090516 17:37:48< Ivanovic> yeah 20090516 17:37:58< Ivanovic> i am off for some hours, cu 20090516 17:39:32< Crab_> boucman: don't know. but it was the same before.. 20090516 17:39:35< Ivanovic> Chusslove: that is i hope that german is currently free of any warnings 20090516 17:39:45< boucman> kk 20090516 17:39:50< Chusslove> Except for 26 of these with trailing space. 20090516 17:40:05< boucman> it's only 2.5% so it's not that big a deal 20090516 17:40:44< boucman> alink: I can confirm idling animations are blocked 20090516 17:41:00< Ivanovic> Chusslove: do you also search for "starting" spaces missing? 20090516 17:41:06< Chusslove> No. 20090516 17:41:30< alink> boucman: ok, thanks for checking and sorry for the false alarm :-/ 20090516 17:41:34< Ivanovic> please do so if this is easily addable 20090516 17:43:14< boucman> np 20090516 17:43:23< boucman> alink: I would rather have it be a true error 20090516 17:43:38< boucman> right now I have no idea how my patch could be slower than alink's 20090516 17:44:03< boucman> /alink/silene 20090516 17:45:44< alink> boucman: didn't silene also skipped some unit:refresh ? 20090516 17:46:17< boucman> yes, I just found that out, checking if that could be the problem, and if we can safely disable that too 20090516 17:46:18< alink> note that link about my remark about missed idle causing a restart of standing anim 20090516 17:47:52-!- silene [n=plouf@wesnoth/developer/silene] has quit [Nick collision from services.] 20090516 17:48:15-!- silene [n=plouf@wesnoth/developer/silene] has joined #wesnoth-dev 20090516 17:50:13-!- elias [n=allefant@allegro/developer/allefant] has quit ["Leaving"] 20090516 17:51:08< CIA-30> crab * r35654 /trunk/src/unit.cpp: Fixed a bug with 'marking some units as invisible when they are not'. 20090516 17:51:33< Crab_> silene: thanks again for spotting. ^ 20090516 17:56:39-!- sparr [n=sparr@c-71-59-38-71.hsd1.ga.comcast.net] has quit [Remote closed the connection] 20090516 17:58:48< boucman> Crab_: do you have time for one more test ? 20090516 17:58:53< Crab_> yes 20090516 17:59:04< boucman> ok, I finish testing it 20090516 18:02:38-!- Elvish_Pillager [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20090516 18:06:34-!- euschn [n=chatzill@wesnoth/developer/euschn] has quit [Read error: 110 (Connection timed out)] 20090516 18:12:40< boucman> Crab_: http://wesnoth.pastebin.com/m2bfc2e3a 20090516 18:12:48< boucman> just do the 2G test 20090516 18:12:58< Crab_> ok 20090516 18:13:17< boucman> it might slightly improve with silene's patch too, though 20090516 18:17:47< silene> boucman: i see this comment in your code: "off screen animations only invalidate their own hex, no propagation, but we stil need this to play sounds"; note that i clearly remember some campaign designers asking that things out of screen don't do sound so that they can do ambient thingies 20090516 18:18:24< boucman> silene: well, I also had request the other way 20090516 18:18:46< alink> silene: IIRC ambient sound use other code, taking account of distance 20090516 18:19:29-!- Elvish_Pillage2 [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has quit [Read error: 110 (Connection timed out)] 20090516 18:20:38< alink> mmh but in this case maybe anim sound should also use distance-to-screen 20090516 18:21:17< alink> and i don't remember if we use stereo for ambient sound. 20090516 18:24:11< alink> i see a positional_source::calculate_volume but no 'stereo' in code 20090516 18:25:22< alink> i suppose that using this calculate_volume for unit should be easy (if wanted) 20090516 18:26:09< Crab_> boucman: can you recheck http://wesnoth.pastebin.com/m2bfc2e3a ? 20090516 18:26:12< Soliton> it would certainly make off-screen sounds more useful. 20090516 18:26:47< Crab_> boucman: it lacks a patch header. so I'm not sure if it's all or not. 20090516 18:26:47< boucman> Crab_: what's the pb ? 20090516 18:27:25< boucman> http://wesnoth.pastebin.com/m1db7b8dd 20090516 18:27:30< boucman> sorry bad copy/paste 20090516 18:27:35< Crab_> np 20090516 18:27:56< alink> Soliton: yeah, plus it add more info into the sound, its volume will tell you if it fight near you are watching (assuming you watch where you care) 20090516 18:40:34< boucman> lumiere 20090516 18:41:55< mordante> Chusslove, I still want to ask esr to look at the trailing spaces in the original 20090516 18:42:15< Chusslove> Sure, so now only the check for colon-space. 20090516 18:42:47< Chusslove> And it's already made to react on any space if it founds "outer-space-significant" in extracted comment. 20090516 18:44:26< mordante> esr, Chusslove found this list of trailing spaces http://caslav.gmxhome.de/misc/msgs-w-trspc.out do you want to check whether they are valid 20090516 18:45:13< mordante> this needs to be verified against the WML since some strings are composed 20090516 18:46:08< mordante> if the space is valid it can be marked with "outer-space-significant" in the comment so Chusslove's tool can ignore it on the next run 20090516 18:59:12< stikonas> Chusslove: can you add Lithuanian (lt) to the list of languages that have whitespaces checked. 20090516 19:00:02< Chusslove> stikonas: Added. 20090516 19:00:08< stikonas> thanks 20090516 19:01:44< Chusslove> stikonas: Only three: po/wesnoth-lib/lt.po:959(#159), po/wesnoth-utbs/lt.po:12233(#1720), po/wesnoth/lt.po:7837(#1203) 20090516 19:02:13-!- zookeeper [n=l@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20090516 19:05:23< zookeeper> boucman, maybe you want to chime in here, even if just to say it'd be too much work: http://www.wesnoth.org/forum/viewtopic.php?f=12&t=25477 20090516 19:06:04< Crab_> boucman: 9.36 20090516 19:15:15< CIA-30> alink * r35655 /trunk/src/ (display.cpp display.hpp): 20090516 19:15:15< CIA-30> Add a new function propagate_invalidation() 20090516 19:15:15< CIA-30> Not used yet but meant to replace the slower set_intersection in unit_animation.cpp 20090516 19:15:54< alink> boucman: didn't touched unit_animation.cpp because you work there, but please consider using that function ^ 20090516 19:18:41< boucman> zookeeper: thx, replied 20090516 19:19:13< alink> boucman: set_intersection can be linear on invalidated_ (which can be >200), better depend on the sprite size (often=1) 20090516 19:19:37< boucman> Crab_: it means that my recent change actually slowed things down ? 20090516 19:19:53< alink> also, maybe remove get_invalidated(), because it ignores invalidate_all_ 20090516 19:20:03< boucman> alink: good point 20090516 19:20:20< Crab_> boucman: well, the time is not that deterministic. but, it's probably safe to say that they're not helped much. 20090516 19:21:33-!- busfahrer is now known as duschfahrer 20090516 19:24:03< boucman> alink: thx, i'll add it at the next iteration of my patch 20090516 19:25:36< alink> boucman: ok, note that didn't tested it yet (in case you plan to add it in the soon 1.7.0) 20090516 19:25:45< boucman> I do, 20090516 19:25:47< alink> but code is straightforward 20090516 19:25:48< boucman> but i'll test 20090516 19:25:59< boucman> i'll also commit my changes after that 20090516 19:26:17< boucman> I won't revert silene's stuff, but I have too many changes flying around at this point, and I want to commit 20090516 19:28:23< alink> lol," code is straightforward", but I already found an error, I will fix it and double-check/test things, since it will be already used 20090516 19:32:03< boucman> k, i'll wait for that 20090516 19:32:03< CIA-30> alink * r35656 /trunk/src/display.cpp: Fix error in previous commit 20090516 19:32:19< boucman> (the change in hp means my recompiling isn't totally lost anyway) 20090516 19:39:43< alink> boucman: ok, just tested it by plugging the function in the code of current trunk (replacing set_intersection ) and it works fine 20090516 19:41:43< CIA-30> noyga * r35657 /branches/1.6/po/ (wesnoth/fr.po wesnoth-utbs/fr.po): French translation fixes 20090516 19:41:47< boucman> alink: well, that's what I did too :) 20090516 19:42:12< Noyga> thx Chusslove 20090516 19:42:17< alink> btw I wonder why set_intersection didn't need a std:: prefix 20090516 19:42:25< boucman> good question 20090516 19:45:13< alink> same for sort(), don't need std:: 20090516 19:45:39< alink> but string need std:: 20090516 19:46:03< CIA-30> noyga * r35658 /branches/1.6/ (changelog players_changelog): Changelog update for r35657 20090516 19:46:24< Chusslove> Noyga: Shall I put French into list of languages to be checked for matching outer spaces? 20090516 19:49:12< mordante> alink, where does that happen? 20090516 19:49:33< alink> grep set_intersection (only one use) 20090516 19:49:40< alink> but it's unit_animation.cpp 20090516 19:49:50< alink> ~847 20090516 19:50:02< Noyga> AFAIK french needs a special leading space (not the standard one) before ':', '!' and '?' signs and a normal space afer the semi colon 20090516 19:50:32< CIA-30> boucman * r35659 /trunk/src/ (unit.cpp unit.hpp unit_animation.cpp unit_animation.hpp): commit all my pending perf improvements, there is too much stuff lying around I need to save all that 20090516 19:50:54< Noyga> (non breaking space) 20090516 19:51:17< CIA-30> ivanovic * r35660 /trunk/po/ (11 files in 11 dirs): updated German translation (adding trailing/leading spaces as in the original strings) 20090516 19:51:53< Chusslove> So... I'm putting French on the list, as it trailing space comes after colon, so like English. 20090516 19:53:04< Ivanovic> re 20090516 19:53:06< CIA-30> ivanovic * r35661 /branches/1.6/ (9 files in 8 dirs): updated German translation (adding trailing/leading spaces as in the original strings) 20090516 19:54:22< Ivanovic> Chusslove: could you please check if german is now clean of any of those warnings? (it should be) 20090516 19:54:25< Noyga> yes. In english: it should be text:; in french: text: 20090516 19:55:09< Chusslove> Ivanovic: just this one: po/wesnoth-low/de.po:888(#116) 20090516 19:55:47< mordante> alink, my guess is argument dependent namelookup 20090516 19:56:15< Ivanovic> okay, fixing this one, too... 20090516 19:56:55< alink> mordante: ah indeed, that's probably that. At least that make sense 20090516 19:57:02< CIA-30> ivanovic * r35662 /trunk/po/wesnoth-low/de.po: fix another trailing space issue in the German translation... 20090516 19:57:06< CIA-30> ivanovic * r35663 /branches/1.6/po/wesnoth-low/de.po: fix another trailing space issue in the German translation... 20090516 19:57:54< mordante> alink, some people complain that argument dependent namelookup makes no sense ;-) 20090516 19:57:55 * Noyga will merge his small fixes to trunk after dinner (right now) 20090516 19:58:01< alink> mordante, boucman: but I suppose we should always add the std:: even if it work without it (?) 20090516 19:58:13-!- ilor_ [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 19:58:34< mordante> alink, I prefer the std:: prefix 20090516 19:59:06< mordante> only for some C things I don't do it eg std::printf 20090516 20:00:15< mordante> but we had some issues with some compilers about those functions since gcc puts more in the global namespace as the sun compiler 20090516 20:01:50< alink> yeah also this assume that you know the name of all std algorithms (if you want to check if it's one of our function or a std one) 20090516 20:01:50< CIA-30> mordante * r35664 /trunk/src/ (lexical_cast.hpp tests/test_lexical_cast.cpp): 20090516 20:01:50< CIA-30> Rewrote the lexical_cast code. 20090516 20:01:50< CIA-30> When using boost::enable_if the code looks simpler. 20090516 20:05:17< boucman> I have to go, see you all later 20090516 20:05:19-!- Sirp [n=me@wesnoth/developer/dave] has quit [Read error: 113 (No route to host)] 20090516 20:05:37< silene> mordante: the main issue with argument-dependent lookup is that its definition is broken; we considered a proposal to fix it in c++0x, but unfortunately it was rejected because it would have broken too many legacy programs 20090516 20:05:39< Ivanovic> cu boucman 20090516 20:07:02< mordante> bye boucman 20090516 20:07:21< mordante> silene, :-( 20090516 20:07:56-!- duschfahrer is now known as busfahrer 20090516 20:13:52< silene> 2005, i had forgotten the proposal was already that old; the beginning of section 2 is especially interesting: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1792.pdf 20090516 20:15:18-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 20:15:30-!- Polarina [n=polarina@wesnoth/translator/Polarina] has quit ["Leaving."] 20090516 20:41:11< CIA-30> alink * r35665 /trunk/ (changelog players_changelog): update changelogs 20090516 20:42:17-!- ilor_ [n=user@wesnoth/developer/ilor] has quit [Remote closed the connection] 20090516 20:42:30-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 20:47:09-!- busfahrer [n=busfahre@unixboard/user/busfahrer] has quit ["leaving"] 20090516 20:50:03-!- noy [n=Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20090516 21:03:50< CIA-30> noyga * r35666 /trunk/po/ (wesnoth/fr.po wesnoth-utbs/fr.po): French translation fixes 20090516 21:17:49< mordante> interesting paper silene 20090516 21:22:47-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20090516 21:26:20-!- ilor [n=user@wesnoth/developer/ilor] has quit [Remote closed the connection] 20090516 21:26:33-!- ilor [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 21:29:42-!- PK9 [n=pk@r74-192-44-206.vctrcmta01.vctatx.tl.dh.suddenlink.net] has joined #wesnoth-dev 20090516 21:30:35-!- PK9 [n=pk@r74-192-44-206.vctrcmta01.vctatx.tl.dh.suddenlink.net] has quit [Client Quit] 20090516 21:43:52< AI0867> not sure who to poke about this, but when starting a game using the --multiplayer switch, [era] [event]s do not work 20090516 21:44:35-!- ABCD [n=ABCD@wikipedia/ABCD] has joined #wesnoth-dev 20090516 21:54:56-!- grzywacz [n=grzywacz@wesnoth/developer/grzywacz] has joined #wesnoth-dev 20090516 21:59:45-!- EdB [n=edb@79.88.117.241] has joined #wesnoth-dev 20090516 22:06:34< Soliton> the bug tracker. 20090516 22:11:10-!- ilor_ [n=user@wesnoth/developer/ilor] has joined #wesnoth-dev 20090516 22:13:21-!- noy [n=Noy@wesnoth/developer/noy] has quit [] 20090516 22:20:54-!- stikonas_ [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 22:23:27-!- ilor [n=user@wesnoth/developer/ilor] has quit [Read error: 110 (Connection timed out)] 20090516 22:27:27-!- maxy [n=maxy@80-219-0-199.dclient.hispeed.ch] has quit [] 20090516 22:35:49-!- stikonas [n=quassel@wesnoth/translator/stikonas] has quit [Read error: 110 (Connection timed out)] 20090516 22:39:32-!- alink [n=alink@wesnoth/developer/alink] has quit [Remote closed the connection] 20090516 22:42:27< CIA-30> mordante * r35667 /trunk/src/ (lexical_cast.hpp tests/test_lexical_cast.cpp): Add more specialized lexical_cast versions. 20090516 22:54:56< CIA-30> ivanovic * r35668 /trunk/po/wesnoth-thot/it.po: updated Italian translation 20090516 22:55:03< CIA-30> ivanovic * r35669 /branches/1.6/po/wesnoth-thot/it.po: updated Italian translation 20090516 22:56:22< mordante> I'm off bye 20090516 22:56:37-!- mordante [n=mordante@wesnoth/developer/mordante] has quit ["Leaving"] 20090516 23:07:23-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["Tengo que ir... Yeahzorz..."] 20090516 23:14:54-!- VladimirSlavik [n=chatzill@wesnoth/translator/VladimirSlavik] has joined #wesnoth-dev 20090516 23:26:52-!- thespaceinvader_ [n=chatzill@91.108.146.217] has joined #wesnoth-dev 20090516 23:27:18-!- Elvish_Pillage2 [n=eli@68-116-175-24.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20090516 23:28:08-!- thespaceinvader [n=chatzill@wesnoth/artist/thespaceinvader] has quit [Nick collision from services.] 20090516 23:28:16-!- thespaceinvader_ is now known as thespaceinvader 20090516 23:33:06< CIA-30> esr * r35670 /trunk/data/campaigns/Eastern_Invasion/scenarios/13.Evacuation.cfg: 20090516 23:33:06< CIA-30> Address bug #13517: [EI]_13.Evacuation: water should be deep after 20090516 23:33:06< CIA-30> destroying the bridge. 20090516 23:33:30-!- stikonas [n=quassel@ctv-217-147-36-78.vinita.lt] has joined #wesnoth-dev 20090516 23:34:06< esr> zookeeper: You were looking for me? 20090516 23:34:35< zookeeper> yeah. if you saw that part, then surely you saw my question too? 20090516 23:35:34< zookeeper> * zookeeper wonders if it'd be time to finally change "the peoples of the north" in the HttT intro into something more descriptive 20090516 23:35:39< zookeeper> such as "the orcish tribes of the north" or whatever. 20090516 23:35:51< esr> zookeeper: Yes, you're right. 20090516 23:35:57< esr> I'll do it. 20090516 23:36:12< esr> BTW, I just fixed a minor bug assigned to you. 20090516 23:36:33< zookeeper> yes, i saw that 20090516 23:38:16< esr> Good thingh you're here, actually. I have a WML problem in NR - need to test for the existence of Eryssa though she's not on side 1 (previous scenario leaves her as leader of side 9). What's the recommended wayy to do that? 20090516 23:39:10< zookeeper> [if] [have_unit] ? 20090516 23:40:35< CIA-30> esr * r35671 /trunk/data/campaigns/Heir_To_The_Throne/utils/intro.cfg: 20090516 23:40:35< CIA-30> "Peoples of the North" didn't fit quite right any more; the world has 20090516 23:40:35< CIA-30> evolved some. 20090516 23:41:07< silene> esr: come on, 1.7.0 is released tomorrow; why did you feel the need to break the translations on trunk right now? 20090516 23:41:24< silene> couldn't it wait till monday? 20090516 23:41:37< esr> zookeeper: That's what's coded now, but it doesn't seem to work. This is in a prestart event, Eryssa isn't on the map. 20090516 23:41:57-!- Noyga [n=lame-z@wesnoth/developer/noyga] has quit ["Quitte"] 20090516 23:42:07< esr> silene: Because zookeeper just asked me to to do it for valid continuity reasons. 20090516 23:42:30< zookeeper> well if she's not on the map then she's in a variable somewhere. 20090516 23:42:45< zookeeper> (or on a recall list) 20090516 23:43:24< Ivanovic> silene: uhm, translators are basically not meant to work on trunk atm anyway 20090516 23:43:33< Ivanovic> current work is better spent on the stable version 20090516 23:43:34< Ivanovic> ;) 20090516 23:43:55-!- Elvish_Pillager [n=eli@71-10-230-73.dhcp.oxfr.ma.charter.com] has quit [Read error: 110 (Connection timed out)] 20090516 23:44:25< Ivanovic> esr: and don't forget to also fix bug #13517 in 1.6 if the fix is not too intrusive 20090516 23:44:26< Ivanovic> ;) 20090516 23:45:56< zookeeper> hey, does the new pango markup work in story screen text? 20090516 23:48:56-!- stikonas_ [n=quassel@ctv-217-147-36-78.vinita.lt] has quit [Read error: 110 (Connection timed out)] 20090516 23:50:01< esr> Ivanovic: It's not at all intrusive; I'll dio it. 20090516 23:50:35< esr> zookeeper: I guess what I'm asking is how to look for a unit on a recall list that's not side 1. 20090516 23:51:29-!- mjs-de [n=mjs-de@vpw.wh.Uni-Dortmund.DE] has quit [Read error: 113 (No route to host)] 20090516 23:51:39 * esr reperats zookeeper's question...if pango markup works in story screens now esr has a lott of cleanup to do. 20090516 23:55:04< zookeeper> esr, well, store the unit and check if array.length>0 20090516 23:55:17< zookeeper> [have_unit] doesn't match units on recall lists 20090516 23:59:00< esr> zookeeper: I know. I guess storing it will have to do. 20090516 23:59:27< zookeeper> or just...set a variable in the previous scenario and check for that. --- Log closed Sun May 17 00:00:23 2009