J Percival
2018-05-27 00:55:24 UTC
I don't think I can help with the window-manager or cpu_idle=1 issue (might
be an IDE timing issue with the latter but that's just a guess).
With cpu_idle=0 AFAIK the emulator will consume 100% of one CPU core for
the main thread.
You could try this source-code hack to reduce CPU usage (but it may cause
the same problem as cpu_idle=1). I haven't tested it on Linux however.
In rpc-qt5.cpp between the lines 'elapsed_timer.start();' and '// Handle qt
events and messages' replace the contents with:
int sleep_countdown = 10 ; // Sleep 1ms every n times around the main
loop
int sleep_countdown_counter = sleep_countdown ;
while (!quited) {
// Time to sleep to reduce CPU usage?
if ((sleep_countdown_counter--) == 0)
{
#if defined(Q_OS_WIN32)
Sleep(1) ;
#endif // defined(Q_OS_WIN32)
#if defined(Q_OS_LINUX)
struct timespec tm;
tm.tv_sec = 0;
tm.tv_nsec = 1000000;
nanosleep(&tm, NULL);
#endif // defined(Q_OS_LINUX)
sleep_countdown_counter = sleep_countdown ;
}
be an IDE timing issue with the latter but that's just a guess).
With cpu_idle=0 AFAIK the emulator will consume 100% of one CPU core for
the main thread.
You could try this source-code hack to reduce CPU usage (but it may cause
the same problem as cpu_idle=1). I haven't tested it on Linux however.
In rpc-qt5.cpp between the lines 'elapsed_timer.start();' and '// Handle qt
events and messages' replace the contents with:
int sleep_countdown = 10 ; // Sleep 1ms every n times around the main
loop
int sleep_countdown_counter = sleep_countdown ;
while (!quited) {
// Time to sleep to reduce CPU usage?
if ((sleep_countdown_counter--) == 0)
{
#if defined(Q_OS_WIN32)
Sleep(1) ;
#endif // defined(Q_OS_WIN32)
#if defined(Q_OS_LINUX)
struct timespec tm;
tm.tv_sec = 0;
tm.tv_nsec = 1000000;
nanosleep(&tm, NULL);
#endif // defined(Q_OS_LINUX)
sleep_countdown_counter = sleep_countdown ;
}
I know I'm a very much edge case user of rpcemu (probably).
I use rpcemu to run "headless" fish.ccl4.org, which is a viewdata
bulletin
board - it used to run on an A5000, orginally on a Demon employee's
baseband line and various DSL lines since. The A5000 packed in a bit ago
(though I still have it somewhere).
For various reasons it now runs on a VM "somewhere" using rpcemu, with a
bridgename = br0
model = RPCSA
mouse_twobutton = 0
network_type = iptunnelling
mouse_following = 1
cdrom_type = 0
cdrom_enabled = 0
refresh_rate = 5
stretch_mode = 1
sound_enabled = 0
vram_size = 2
mem_size = 32
ipaddress = 172.31.0.1
cpu_idle = 1
With this it takes about 12% or less cpu on idle.
There is no window manager, just Xvnc.
I use hostfs, I haven't tried it recently but with cpu_idle=1 it quickly
resulted in corrupt .hdf images previously.
I tried the new version with the shift to Qt and it does seem slightly
confused with the lack of a window manager and the cpu has increased to
more like 16% or more on idle.
This is the interpreter, the recompiler has always taken lots more % when
I've tried it.
I've gone back to the "old" version, but any suggestions ? Can any simple
tweaks be made to cope with my usage ? I would very much prefer to not run
a window manager (even Matchbox) - VNC access is not the norm, but
occasionally neccessary for admin.
Running the old version is not a problem per se, but I would prefer to
keep uptodate if possible.
Thanks.
_______________________________________________
Rpcemu mailing list
http://www.riscos.info/cgi-bin/mailman/listinfo/rpcemu
I use rpcemu to run "headless" fish.ccl4.org, which is a viewdata
bulletin
board - it used to run on an A5000, orginally on a Demon employee's
baseband line and various DSL lines since. The A5000 packed in a bit ago
(though I still have it somewhere).
For various reasons it now runs on a VM "somewhere" using rpcemu, with a
bridgename = br0
model = RPCSA
mouse_twobutton = 0
network_type = iptunnelling
mouse_following = 1
cdrom_type = 0
cdrom_enabled = 0
refresh_rate = 5
stretch_mode = 1
sound_enabled = 0
vram_size = 2
mem_size = 32
ipaddress = 172.31.0.1
cpu_idle = 1
With this it takes about 12% or less cpu on idle.
There is no window manager, just Xvnc.
I use hostfs, I haven't tried it recently but with cpu_idle=1 it quickly
resulted in corrupt .hdf images previously.
I tried the new version with the shift to Qt and it does seem slightly
confused with the lack of a window manager and the cpu has increased to
more like 16% or more on idle.
This is the interpreter, the recompiler has always taken lots more % when
I've tried it.
I've gone back to the "old" version, but any suggestions ? Can any simple
tweaks be made to cope with my usage ? I would very much prefer to not run
a window manager (even Matchbox) - VNC access is not the norm, but
occasionally neccessary for admin.
Running the old version is not a problem per se, but I would prefer to
keep uptodate if possible.
Thanks.
_______________________________________________
Rpcemu mailing list
http://www.riscos.info/cgi-bin/mailman/listinfo/rpcemu