I think it has something to do with a specific ResetWB that stems from saving changes in GUI as I have been doing some remodeling and only after a couple of those as an accumulating effect, because I do encountered a bug in 4.1FE GUI that if you save a few times it distablises the system until it freezes. Anyway, didn't get a chance to thank you for your work because the new NetSurf is in fact better and performs smoother. So have a great week.
I've been testing Dev CI# 3460 of the upcoming 3.5 release and I can say the issue I had with AutoBorderSize is gone, while the issues I recognize since the first time I used Netsurf are still there: It produces on occasion a heavy load condition that brings everything to a halt. Once in while this condition might lead to a freeze. If used alongside a resource and/or composite app like Candi, it accelerates this sort of bottleneck situation. In addition, it still can't read right-to-left languages and it still can make everthing come to a halt because of a timeout (albeit this improved on the latest version). Those things are not dependent on if Java is enabled or disabled and using the settings: cache all and higher quality scaling actually can reduce the occurances described above (at the cost of making everything a little bit slower) as well as increasing memory to 48 while going beyond that makes things worse.
I've been testing Dev CI# 3460 of the upcoming 3.5 release and I can say the issue I had with AutoBorderSize is gone,
OK, good, don't know what fixed it though!
Quote:
while the issues I recognize since the first time I used Netsurf are still there: It produces on occasion a heavy load condition that brings everything to a halt. Once in while this condition might lead to a freeze. If used alongside a resource and/or composite app like Candi, it accelerates this sort of bottleneck situation.
It uses compositing functions heavily to speed up rendering. I've never seen it freeze up though, it will be interesting to see a test case. I suspect if Candi is also using compositing then maybe it's a gfx card memory or GPU issue (or at least related to that). Without seeing it for myself I can't really know.
Quote:
In addition, it still can't read right-to-left languages
and it still can make everthing come to a halt because of a timeout (albeit this improved on the latest version).
There are some extra timeout options now, so you can do a short timeout period with a lot of retries. Can't remember the options off-hand, have a look at about:config
Quote:
Those things are not dependent on if Java is enabled or disabled and using the settings: cache all and higher quality scaling actually can reduce the occurances described above
Cache scaled bitmaps makes some sites much quicker. I'm not sure why, but some pages just sit there for ages whilst NetSurf converts some images.
Quote:
(at the cost of making everything a little bit slower)
The higher quality scaling could slow things down. Cache native versions: all/scaled definitely should not.
Netsurf doesn't like to play well with others. Luckily AOS, I guess out of neccasity made disabling stuff at startup very easy. Lets hope for a different solution, though. I'm using a GFX card of the southern islands origin - a generic card without issues. Video playing in oddysey can also have similiar effect just not like the 2 minutes halts of Netsurf which happen after the page seems to have loaded and everything is ok.
Edited by Srtest on 2016/4/1 14:47:37 Edited by Srtest on 2016/4/3 7:53:30
No, you can't, but you can find the values and put them into the Choices file (under users/default/choices)
Anyway, I'm in a position to look them up now, so: max_retried_fetches:1 curl_fetch_timeout:30
Those are the defaults. If you reduce curl_fetch_timeout and increase max_retried_fetches it might help.
Quote:
Netsurf doesn't like to play well with others. Luckily AOS, I guess out of neccasity made disabling stuff at startup very easy. Lets hope for a different solution, though. I'm using a GFX card of the southern islands origin - a generic card without issues. Video playing in oddysey can also have similiar effect
My hunch is that you're running out of video memory.
Quote:
just not like the 2 minutes halts of Netsurf which happen after the page seams to have loaded and everything is ok.
That's the issue which is resolved by changing "cache native versions" to "scaled" or "all". "scaled" won't use as much video memory so is preferred.
The slowness is caused by multiple conversions of a bitmap (at least, that seems to be the reason), but I've never been able to figure out why that happens.
That's the issue which is resolved by changing "cache native versions" to "scaled" or "all". "scaled" won't use as much video memory so is preferred.
Have you considered (or perhaps you already are?) caching bitmaps in non-video memory? Obviously not as fast as storing them in video memory, but should save video memory for stuff you're currently not displaying, while avoiding the need to regenerate/reload bitmaps when you do need to display them.
(Note: PortablE's gfx system does something along those lines. e.g. When a sprite is not visible on screen, it's bitmap is unloaded from video memory, but a non-video memory copy is still kept.)
Have you considered (or perhaps you already are?) caching bitmaps in non-video memory?
I probably am. I'm not locking them, so I assume the OS should be swapping them out if it needs the space. But I have noticed it seems to eat video mem, and when it gets really low everything slows to a crawl.
I probably am. I'm not locking them, so I assume the OS should be swapping them out if it needs the space.
Yes, it does... but not as well as it could do, resulting in slow speed (in at least some circumstances).
Quote:
But I have noticed it seems to eat video mem, and when it gets really low everything slows to a crawl.
From my experience also, Picasso96 doesn't handle low video memory very well (runs very slowly). Someone (possibly Hans) told me why that was, but I'm not sure if I'm allowed to repeat it.
Quote:
Or do I need to do something special?
I don't know about "need", but I resorted to manally managing what bitmaps were stored in video memory, and I found that to work better on a Sam440 which has limited video memory.
I'd have to check exactly how my code works, but the basic idea was to initially create all bitmaps in non-video memory (but with the same pixel format as the screen buffer), and then copy them into new bitmaps in video memory if they might need displaying (due to being scrolled on-screen, etc). When a bitmap no-longer needs displaying, I just deallocate the copy, leaving the non-video memory original.
I tried to use the same method, with both CyberGfx & Picasso96, to allocate bitmaps in non-video memory, but it didn't work as expected on Picasso96 (it would automagically move non-video-memory bitmaps into video memory), so I had to make a slighty change to my code: http://forum.hyperion-entertainment.biz/viewtopic.php?f=26&t=1724
NOTE: Copying from non-video memory to video memory is quite fast (if the pixel format doesn't need changing)... but it is NOT instant. So you are gaining speed in low-video-memory situations, at the expense of a slight speed hit during normal situations. Probably a more complex scheme (where non-displayable bitmaps are kept in video memory unless video memory runs low) would perform better. HOWEVER, since I originally suggested this solution as a way of speeding-up NetSurf's "caching" of bitmaps, I guess this isn't an issue. You can just "cache" bitmaps in non-video memory (assuming this isn't something you aren't already doing). For any bitmaps you wish to "cache", just make sure to create it first in non-video memory, and THEN copy it to video memory.
Edited by ChrisH on 2016/4/3 11:33:21 Edited by ChrisH on 2016/4/3 11:38:36 Edited by ChrisH on 2016/4/3 11:39:44 Edited by ChrisH on 2016/4/3 11:41:21 Edited by ChrisH on 2016/4/3 11:42:14
Curious. None of these bitmaps are displayed, only blitted. Reading the other thread it suggests that BMF_USERPRIVATE will stop them moving to video RAM, but that P96 will allocate memory anyway? So I don't think there is any benefit to doing this.
Build 3940 stores some large image data in Extended Memory. This functionality requires OS4.1FEU1.
I'm interested in any positive or negative impact (slower speed, less memory usage, crashing, whatever) as it has had limited testing - I don't have the >2GB required to really exercise it.
I don't know how to tell how much extended memory is being used - memstat doesn't seem to give this information - so the memory usage question may not be obviously answered.
@Chris, I have an X1000 with 4GB RAM, so 2GB must be extended, I tried both 3940 and 3939, speaking about speed I doesn't noticed differencies, but also memory consuming seems identic, maybe I have not visited the right pages but like you said there is no way to know how much extended memory it's used. Maybe you can make a debug version that show the extended memory usage.
P.S. posted with 3940 build P.P.S. the preview button doesn't work
I've put up a test executable here: http://www.cy2.uk/tmp/netsurf_os4_test.lha The contents of the archive will need to replace the NetSurf executable (back it up first) of a recent CI build. I've been trying to optimise SSL somewhat, so I'm interested to know if (a) this has broken anything, and (b) if there is any speed difference positive or negative on secure websites. Including the CPU you are using will be most helpful.
I'm getting a very weird behaviour on this and recent builds (ever since the treeview change). When I go to underrail.com and add it to the unsorted hotlist, upon draging and dropping I get this:
"assertion "!relation->flags & TV_NFLAGS_SELECTED)" failed: file "desktop/treeview.c", line 2548 ***Command 'NetSurf' returned with unfreed signals 0FF00000!"
This doesn't happen on any other website on my unsorted hotlist... weird.
Other than that https sites do seem a little bit faster although it's hard to say because recent versions have functioned better.
I've been trying to really test it but the last couple of weeks you've added stuff which forced me to cancel my reviews a couple of times... due to good reasons
Anyway, one part is still relevent and that the affect Candi has on Netsurf. It is minimal at best and regularly almost nothing at all. Whenever it has an impact it does so in the same way that anything graphical (like moving windows for example) can cause something while a timeout occurs. That said, It has been a couple of weeks since I experienced any timeout in the sense that it previouslly could bring the entire system to its knees.
I'm getting a very weird behaviour on this and recent builds (ever since the treeview change). When I go to underrail.com and add it to the unsorted hotlist, upon draging and dropping I get this:
"assertion "!relation->flags & TV_NFLAGS_SELECTED)" failed: file "desktop/treeview.c", line 2548 ***Command 'NetSurf' returned with unfreed signals 0FF00000!"
This doesn't happen on any other website on my unsorted hotlist... weird.
I can't reproduce this here. I assume it's a peculiar set of circumstances. I'll probably need your hotlist file with the entry added and exactly where you're dragging it to.
Quote:
Other than that https sites do seem a little bit faster although it's hard to say because recent versions have functioned better.
OK, that's encouraging. We'll see if anybody else has anything to say.
However still a problem, the special character "ù" are not showed anymore, for example the word "più" should be written as "più " but in program the last letter are not showed anymore becoming --> "pi "
Probably it's the same also for "è" and other special characters like that. Any idea ?
Do you want to elaborate? Are none of them working? Or is it just in certain areas of the GUI? When did this start happening? Is it just with the new file or the old one too?
Also, that's the wrong file, you need to modify FatMessages.