Swapping doesn't work with update 4.

A forum for AmigaOne XE and MicroA1-C specific issues.
User avatar
Christopher Follett
AmigaKit
AmigaKit
Posts: 651
Joined: Mon Feb 21, 2011 5:56 pm
Location: Wales, UK
Contact:

Re: Swapping doesn't work with update 4.

Post by Christopher Follett »

Ive sent you a PM, hope it helps.
Resolute and Industrious
Grand ruler of the yellow people and the Ultimate Amiga Empire
http://www.ultimateamiga.co.uk (Home of SONY PSP Amiga Emulator and AMOS Factory)
__________________
Customer Help & Support: http://www.amigakit.com/help

http://www.amigakit.com - the Amiga store

New Products
xenic
Posts: 1185
Joined: Sun Jun 19, 2011 12:06 am

Re: Swapping doesn't work with update 4.

Post by xenic »

tonyw wrote:BTW, why do you use obsolete system calls like AllocMem() and FreeMem() ?
Maybe because there are no warnings when compiling those functions. When you use deprecated functions in DOS library you get compiler warnings. I think someone should go through the Includes and mark all deprecated and obsolete functions so that compiler warnings are issued. Personally, I avoid using functions when they produce "DEPRECATED" compiler warnings; I suspect others would too. Very few people can easily memorize the autodocs, so it's easy to use obsolete or deprecated functions without realizing it.

In the case of AllocMem(), it's mentioned that it's obsolete in a short obscure sentence at the end of the autodoc. All obsolete and deprecated functions should be clearly marked as such at the top of the function's autodoc entry. If you look at the Allocate() function in the exec autodocs, the example uses Allocmem() ! Somebody needs to clean up the autodocs, clearly mark obsolete functions and change the includes to produce compiler warnings for those functions.
AmigaOne X1000 with 2GB memory - OS4.1 FE
Deniil
Posts: 109
Joined: Mon Jul 11, 2011 6:59 pm

Re: Swapping doesn't work with update 4.

Post by Deniil »

What does that have to do with reputation ? If there's a bug, and someone can deliver a test case that shows it, then I'll gladly acknowledge that I made a mistake and can correct it.
It was a joke for crist sake! I'm just a bit surprized that none of the 100+(?) beta testers ever run across this problem for several updates since I'm not the only one having it and, at least to me, it is so very obvious. Seems to me they all have too much memory or haven't explored the world of multitasking and pushed their machines enough..... ;-)
It's not that simple. I tried it, and it didn't lock up at first... I repeated the allocation->deallocation cycle several times, until it finally locked up. It's not as simple as re-allocating something that has been paged out before. It might also be a race condition. I will have to find out what exactly is happening to be sure.
Might very well be a race condition. That's why I also listed my disk config.
Question still stands, did it happen on anything prior to Update 4 ?
Yes, update 3 had the same problem, but not update 2.
In update 2 swapping worked quite ok unless you stressed it too much, then it grinded into a halt after a while if it just couldn't satisfy the request, but never locked up hard like this after just touching the swap a while earlier.
User avatar
ssolie
Beta Tester
Beta Tester
Posts: 1010
Joined: Mon Dec 20, 2010 8:51 pm
Location: Canada
Contact:

Re: Swapping doesn't work with update 4.

Post by ssolie »

xenic wrote:Maybe because there are no warnings when compiling those functions.
You will in the next SDK...

We will also try to explain why they should be avoided in the new wiki which is on it's way.
ExecSG Team Lead
User avatar
ssolie
Beta Tester
Beta Tester
Posts: 1010
Joined: Mon Dec 20, 2010 8:51 pm
Location: Canada
Contact:

Re: Swapping doesn't work with update 4.

Post by ssolie »

Deniil wrote:Yes, update 3 had the same problem, but not update 2.
That is very useful information for the developers.

The rest of the commentary we really don't need.
ExecSG Team Lead
Deniil
Posts: 109
Joined: Mon Jul 11, 2011 6:59 pm

Re: Swapping doesn't work with update 4.

Post by Deniil »

That is very useful information for the developers.
I'm sure it is, and it has been available since update 3, only at that time I hadn't yet made this specific test tool that could isolate the problem this much.

If there is any more information you need I'd very very happy to help out. I can't wait until you figure this one out! :-)
xenic
Posts: 1185
Joined: Sun Jun 19, 2011 12:06 am

Re: Swapping doesn't work with update 4.

Post by xenic »

ssolie wrote:
xenic wrote:Maybe because there are no warnings when compiling those functions.
You will in the next SDK...

We will also try to explain why they should be avoided in the new wiki which is on it's way.
Good news! Thanks.
AmigaOne X1000 with 2GB memory - OS4.1 FE
Deniil
Posts: 109
Joined: Mon Jul 11, 2011 6:59 pm

Re: Swapping doesn't work with update 4.

Post by Deniil »

@ssolie

I must say I can't see the point of obsoleting such a basic function as AllocMem :-?
It'd better come with a good explanation, such as the new function coming with memory protection :-)
User avatar
samo79
Posts: 572
Joined: Fri Jun 17, 2011 11:13 pm
Location: Italy

Re: Swapping doesn't work with update 4.

Post by samo79 »

@denill

Hei Daniel I saw this thread only now, so just downloaded your tool and did a quick try with it .. and of course i got the usual freeze after some memory allocations .. i didn't disable the startup sequence yet (as to be honest i'm a bit tired to test that lookups) but i think it would be the same
As i pointed long ago we doesn't need a specific tool like this (even if is it very good) to verify if lookups happen or not, because it happen !

Luckly i have 1 GB phisically mounted on my Sam so low memory situation are very rare in real usage but everytime i reach a "low" memory situation i got the usual resultant freeze, more i can say that freeze happen always and quite instanteneous once you try to fill intentionally your memory :-P

I'm not an expert at all so i can't say who are right in this discussion and of course i can't teach anythings in this area, maybe we just doing a wrong test here, so all i can do is hope that our developers will be able to solve the problem in a way or another :-)
Post Reply