Dear all,
we have a real slow performance of ccp4i, if:
- homedir is on NFS, here /nero is on a i586 Linux system
- actual system is 64 bit, here OpenSUSE 10.3 on core2quad with 8GB ram
from entering ccp4i to see the gui it takes ~2 minutes.
and any popup/dialogue take the same time
This is 6.1, was the same with 6.02
Same user, same system, home dir shifted to a local disk or
same home, user, but i586 (P4, 1GB) some seconds
I have done an strace to see what is going on and I see a lot of:
lstat("/nero/jre", {st_mode=S_IFDIR|0755, st_size=6336, ...}) = 0
lstat("/nero/jre/.CCP4", {st_mode=S_IFDIR|0755, st_size=248, ...}) = 0
access("/nero/jre/.CCP4/dbccp4i.LOCK", F_OK) = -1 ENOENT (No such file or
directory)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
access("/nero/jre/.CCP4/dbccp4i.LOCK", F_OK) = -1 ENOENT (No such file or
directory)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
access("/nero/jre/.CCP4/dbccp4i.LOCK", F_OK) = -1 ENOENT (No such file or
directory)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
access("/nero/jre/.CCP4/dbccp4i.LOCK", F_OK) = -1 ENOENT (No such file or
directory)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
access("/nero/jre/.CCP4/dbccp4i.LOCK", F_OK) = -1 ENOENT (No such file or
directory)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
... (32 times repeated)
open("/nero/jre/.CCP4/dbclientapi.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 4
fcntl(4, F_SETFD, FD_CLOEXEC) = 0
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff1d624760) = -1 ENOTTY
(Inappropriate ioctl for device)
lseek(4, 0, SEEK_END) = 351
write(4, "db_get_handler_port: opening loc"..., 38) = 38
close(4) = 0
open("/nero/jre/.CCP4/dbccp4i.LOCK", O_RDONLY) = 4
fcntl(4, F_SETFD, FD_CLOEXEC) = 0
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff1d6250f0) = -1 ENOTTY
(Inappropriate ioctl for device)
read(4, "port number is:4090", 4096) = 19
read(4, "", 4077) = 0
lstat("/nero", {st_mode=S_IFDIR|0755, st_size=1992, ...}) = 0
lstat("/nero/jre", {st_mode=S_IFDIR|0755, st_size=6336, ...}) = 0
lstat("/nero/jre/.CCP4", {st_mode=S_IFDIR|0755, st_size=280, ...}) = 0
open("/nero/jre/.CCP4/dbclientapi.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 5
fcntl(5, F_SETFD, FD_CLOEXEC) = 0
ioctl(5, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff1d624760) = -1 ENOTTY
(Inappropriate ioctl for device)
lseek(5, 0, SEEK_END) = 389
write(5, "db_get_handler_port: line from l"..., 63) = 63
...
lstat("/nero/jre/.CCP4", {st_mode=S_IFDIR|0755, st_size=280, ...}) = 0
open("/nero/jre/.CCP4/dbclientapi.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 6
fcntl(6, F_SETFD, FD_CLOEXEC) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff1d624820) = -1 ENOTTY
(Inappropriate ioctl for device)
lseek(6, 0, SEEK_END) = 8764
write(6, "db_handler_processResponse: invo"..., 54) = 54
close(6) = 0
lstat("/nero", {st_mode=S_IFDIR|0755, st_size=1992, ...}) = 0
lstat("/nero/jre", {st_mode=S_IFDIR|0755, st_size=6336, ...}) = 0
lstat("/nero/jre/.CCP4", {st_mode=S_IFDIR|0755, st_size=280, ...}) = 0
open("/nero/jre/.CCP4/dbclientapi.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 6
fcntl(6, F_SETFD, FD_CLOEXEC) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff1d624820) = -1 ENOTTY
(Inappropriate ioctl for device)
lseek(6, 0, SEEK_END) = 8818
write(6, "*** REQUEST_LIST: request#9\n", 28) = 28
close(6) = 0
and I see a lot of:
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
read(3, 0x61df94, 4096) = -1 EAGAIN (Resource temporarily
unavailable)
--
Joachim