[winswitch] very high CPU use of xpra
Thomas Koch
thomas at koch.ro
Sat Sep 7 09:14:21 BST 2013
Hi,
xpra uses a lot of CPU resources on my virtual server, running the xpra debian package 0.10.1+dfsg-1 rebuilt
against Wheezy stable. Xpra spawns 10 child threads (processes?) when one program (like firefox) is running.
Three of the child threads seem to run a loop at full steam and consume each around 10% of CPU resources
(see below). Also the pulseaudio process consumes around 10%. Is there anything I can do to further
investigate this or are you aware of this problem.
1. Thread:
clock_gettime(CLOCK_MONOTONIC, {1696, 356227712}) = 0
futex(0x34a4870, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x2a103b0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f0ca406b3c4, FUTEX_WAIT_PRIVATE, 9795, NULL) = 0
futex(0x7f0ca4085650, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f0ca406b3c4, FUTEX_WAIT_PRIVATE, 9797, NULL) = 0
futex(0x7f0ca4085650, FUTEX_WAKE_PRIVATE, 1) = 0
clock_gettime(CLOCK_MONOTONIC, {1696, 375617815}) = 0
2. Thread
munmap(0x7f0cabfff000, 67112960) = 0
write(20, "W", 1) = 1
futex(0x34035f0, FUTEX_UNLOCK_PI_PRIVATE, 33) = 0
futex(0x34b3de4, FUTEX_WAIT_REQUEUE_PI_PRIVATE, 88035, NULL, 0x34035f0) = 0
munmap(0x7f0cabfff000, 67112960) = 0
write(20, "W", 1) = 1
futex(0x34035f0, FUTEX_UNLOCK_PI_PRIVATE, 33) = 0
futex(0x7f0ca406b3c4, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x7f0ca406b3c0, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x7f0ca4085650, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x34b3de4, FUTEX_WAIT_REQUEUE_PI_PRIVATE, 88037, NULL, 0x34035f0) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x34b3de4, FUTEX_WAIT_PRIVATE, 88037, NULL) = -1 EAGAIN (Resource temporarily unavailable)
write(20, "W", 1) = 1
munmap(0x7f0cabfff000, 67112960) = 0
futex(0x34035f0, FUTEX_UNLOCK_PI_PRIVATE, 33) = 0
futex(0x7f0ca406b3c4, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x7f0ca406b3c0, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
3. Thread
sendto(24, "\0\0\0\0\377\377\377\377\0\0\0\20\0\0\0\0@\0\0\0", 20, MSG_NOSIGNAL, NULL, 0) = 20
read(19, "W", 10) = 1
clock_gettime(CLOCK_MONOTONIC, {1908, 665097131}) = 0
poll([{fd=19, events=POLLIN}, {fd=24, events=POLLIN|POLLOUT}], 2, 1245) = 1 ([{fd=24, revents=POLLIN|POLLOUT}])
clock_gettime(CLOCK_MONOTONIC, {1908, 665496657}) = 0
recvmsg(24, {msg_name(0)=NULL, msg_iov(1)=[{"\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0\0\200\0\0\0", 20}], msg_controllen=32, {cmsg_len=28, cmsg
clock_gettime(CLOCK_MONOTONIC, {1908, 665652803}) = 0
poll([{fd=19, events=POLLIN}, {fd=24, events=POLLIN}], 2, 1244) = 1 ([{fd=24, revents=POLLIN}])
clock_gettime(CLOCK_MONOTONIC, {1908, 665751495}) = 0
recvmsg(24, {msg_name(0)=NULL, msg_iov(1)=[{"\0\0\0\17\366\357\tz\0\0\0@\0\0\3p", 16}], msg_controllen=32, {cmsg_len=28, cmsg_level=SO
open("/dev/shm/pulse-shm-4142860666", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 25
fstat(25, {st_mode=S_IFREG|0400, st_size=67108904, ...}) = 0
mmap(NULL, 67112960, PROT_READ, MAP_SHARED, 25, 0) = 0x7f0cabfff000
close(25) = 0
futex(0x34b3de4, FUTEX_CMP_REQUEUE_PI_PRIVATE, 1, 2147483647, 0x34035f0, 100926) = 1
clock_gettime(CLOCK_MONOTONIC, {1908, 666261504}) = 0
futex(0x34035f0, FUTEX_UNLOCK_PI_PRIVATE, 33) = 0
poll([{fd=19, events=POLLIN}, {fd=24, events=POLLIN}], 2, 1244) = 1 ([{fd=19, revents=POLLIN}])
sendto(24, "\0\0\0\0\377\377\377\377\0\0\0\17\0\0\0\0@\0\0\0", 20, MSG_NOSIGNAL, NULL, 0) = 20
read(19, "W", 10) = 1
clock_gettime(CLOCK_MONOTONIC, {1908, 666757989}) = 0
4. Pulseaudio Thread
read(14, "\1\0\0\0\0\0\0\0", 8) = 8
sendto(18, "\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0\0\200\0\0\0", 20, MSG_NOSIGNAL, NULL, 0) = 20
ppoll([{fd=7, events=POLLIN}, {fd=18, events=POLLIN|POLLOUT}, {fd=17, events=POLLIN}, {fd=16, events=POLLIN|POLLERR|POLLHUP}, {fd=16,
sendto(18, "\0\0\0\6\366\357\tz\0\0\0@\0\0\3p", 16, MSG_NOSIGNAL, NULL, 0) = 16
ppoll([{fd=7, events=POLLIN}, {fd=18, events=POLLIN|POLLOUT}, {fd=17, events=POLLIN}, {fd=16, events=POLLIN|POLLERR|POLLHUP}, {fd=16,
recvmsg(18, {msg_name(0)=NULL, msg_iov(1)=[{"\0\0\0\0\377\377\377\377\0\0\0\6\0\0\0\0@\0\0\0", 20}], msg_controllen=32, {cmsg_len=28,
read(14, "\1\0\0\0\0\0\0\0", 8) = 8
sendto(18, "\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0\0\200\0\0\0", 20, MSG_NOSIGNAL, NULL, 0) = 20
Regards, Thomas Koch
More information about the shifter-users
mailing list