Opened 13 years ago

Closed 12 years ago

#1967 closed Bug (fixed)

Unresponsible UI / slower speed under Mac OS X Leopard after 1.42

Reported by: nikk Owned by: livings124
Priority: Normal Milestone: 1.52
Component: Mac Client Version: 1.51
Severity: Major Keywords:
Cc:

Description

When I updated to last (1.51) Transmission release, it's not possible to use it at all. Main problem is: UI goes unresponsible (even about dialog box), and transfers quite slow. In System Monitor max CPU load at this time about 10%, free memory 1Gb, IO/Disk usage not abnormal. No errors in console logs also. Port is open. Didn't see any abnormalities in system except Transmission UI/transfers at all.

Tested it with 1 active transfer of 4Gb movie file over fast LAN connection. All other transfers was paused. Transfer speed from ~6-10 peers was about 2-2.5Mb/s max and unresponsible UI. The same situation with Transmission 1.50 release.

But with Transmission 1.42 (release) speed is 6-7Mb/s and no freezes at all. I'll stay on it. Can help with testing/debug if u want (i'm familiar with shell, nix etc).

Mayby the problem source is LAN and very high speed data transfers?

Change History (27)

comment:1 Changed 13 years ago by nikk

It seems as a general problem in 1.5 branch according to http://forum.transmissionbt.com/viewtopic.php?f=4&t=7000

comment:2 Changed 13 years ago by charles

Try commenting out the fsync command on line 446 of libtransmission/fdlimit.c and rebuilding. Does that make any difference in performance?

comment:3 Changed 13 years ago by nikk

I recompiled last release (1.51) and it works. But problem still exists.

Speed is good, it's going up to 6Mb/s, but it's floating (periodically dropped to ~1Mb/s and UI stalled at that time, freezed scrolling torrent list etc.).

comment:4 Changed 13 years ago by nikk

  • Version changed from 1.42+ to 1.50+

comment:5 Changed 13 years ago by livings124

Try limiting the number of total connections in preferences.

comment:6 Changed 13 years ago by nikk

No, that didn't help also. I limit Global Max. Conn. to 50 and Max. for New. to 10. The same problem still exists. Tested against Transmission-1.51+Z-svn-r8173.

comment:7 Changed 13 years ago by livings124

And this is with those really high total transfer speed? Could still be the hardware not being able to handle it. Can you try the latest nightly?

comment:8 Changed 13 years ago by nikk

The test was with latest nightly, available for download (r8173). The speed was about 2mb/s with Transmission 1.51, and it was about 6mb/s with Transmission 1.42 (same torrent / same transmission config). I think it can be related to local torrent file allocation/disk operations in Transmission versions 1.50+). Looks like UI stalled during buffers stored to disk, but it's only my thoughts.

comment:9 Changed 13 years ago by super-poussin

I found speed better with 8179 and 8181 did you try it nikk ?

comment:10 Changed 13 years ago by nikk

I tried r8182, no changes. UI freezed even with 1 Mb/s data transfer with 1 active torrent. And it's not a hardware issue, cause Transmission 1.42 works flaweless and twice faster than 1.50+. Something changed in it's brain ;-)

comment:11 Changed 13 years ago by nikk

And, some stats: it tooks 3 minutes 50 seconds to download 283 Mb torrent with latest nightly, and it tooks 1 minute 5 seconds with Transmission 1.42. With latest nightly (r8182) speed was not higher than 3mb/s, with 1.42 it's up to 6Mb/s (limit of my Wi-Fi 802.11n notebook connection). Also, With 1.42 speed decreased only once (when buffers stored to disk internally?). With latest nightly it was dropped periodically during download.

comment:12 Changed 13 years ago by charles

I'd be interested in hearing if r8193 makes any difference.

One of the two changes I made there is better file preallocation, but preallocation only gets triggered when a file is created for the first time. So even in the nightly you might not see any behavior change in the pre-existing, partially-downloaded torrent download speeds...

comment:13 Changed 13 years ago by nikk

No, that didn't help. I trashed my Transmission preferences, and tested it with 283Mb torrent.

r8182: 4min 20 sec r8193: 4min 10 sec

1.42: 0 min 55 sec

Speed with svn versions was not more than 3 mb/s. with 1.42 it was up to 6mb/s. UI was stalled during selecting about and browsing transmission preferences with both svn veersions and was fine with 1.42.

So, file allocation not the issue... and 1.42 still 4x faster...

comment:14 Changed 13 years ago by nikk

Some investigation with older builds (I'm testing between 7564 - 7816).

7564 - good performance (up to 6mb/s during all transfer) 7602 - good performance (up to 6mb/s), but stalled to 0 for a while at the middle of download. On second test no stall but little decrease in spead after a half of total download. 7627 - good performance at the beginning, but goest to 0 at the middle, stalled. 7654 - still good during all transfer, but stalled transfer at 99% of total download. 7775 - still good during all transfer, but stalled transfer at 99.6% of total download. 7782 - good performance, but also stalled at 99,7% of total download. 7800 - bad performance, slow UI. 7815 - bad performance, unresponsible UI.

so, there is a good performance without any error (4 me) in 1.42 release and in builds till ~ 75++, in 76++ there is a good performance but stalled downloads with remaining time unknown (they are finished after some pause), and from 7800 there is a bad performance and UI is slow as in last 1.51++ builds...

comment:15 Changed 13 years ago by charles

What about r7797?

The only changes I see in [7782...7800] that might affect performance like this are in r7798. So trying the build right before that would be a good test.

comment:17 Changed 13 years ago by nikk

r7797 - fast load (speed up to 6 mb/s), no UI freezes. Total time: 1min 07 sec

comment:18 Changed 13 years ago by charles

Nightly build r8198 undoes the OS X changes made in r7798. Could you try r8198 or higher and see how that performs compared to the other versions?

comment:19 Changed 13 years ago by nikk

I recompiled Transmission from trunk, and yeah, it's quite fast and responsible now! Let's stay on that in the future ;-)

Another issue with trunk build, there is error in Russian localization files, Transmission starts only in English language. With Russian i have:

10.04.09 18:56:36 Transmission[10519] Unknown class MenuLabel? in Interface Builder file. 10.04.09 18:56:36 Transmission[10519] Unknown class ActionPopUpButton? in Interface Builder file. 10.04.09 18:56:36 Transmission[10519] Could not find image named 'Turtle'. 10.04.09 18:56:36 Transmission[10519] Could not find image named 'Turtle'. 10.04.09 18:56:37 Transmission[10519] Could not connect the action showGroups: to target of class Controller 10.04.09 18:56:37 Transmission[10519] Could not connect the action showGroups: to target of class Controller 10.04.09 18:56:37 Transmission[10519] An uncaught exception was raised 10.04.09 18:56:37 Transmission[10519] Cannot find value transformer with name SpeedLimitToTurtleIconTransformer? 10.04.09 18:56:37 Transmission[10519] * Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Cannot find value transformer with name SpeedLimitToTurtleIconTransformer?' 10.04.09 18:56:37 Transmission[10519] Stack: (

2503184651, 2483646011, 2503184107, 2503184170, 2466060616, 2461440412, 2461440185, 2461439005, 2461437668, 2461436772, 2461436307, 2461404164, 2461651514, 2459386648, 2459346566, 2459344872, 2459343915, 2459343721, 2459342872, 8441, 8254

)

comment:20 Changed 13 years ago by livings124

  • Milestone changed from None Set to 1.60
  • Resolution set to fixed
  • Status changed from new to closed
  • Version changed from 1.51+ to 1.51

Nice to see it's fixed.

Please keep separate issues in separate topics. Localizations are not supported in nightly builds.

comment:21 Changed 13 years ago by nikk

Note: It was not only IO speeddown after changes in r7798. I think all reports about unresponsible UI for Transmission 1.50 - 1.51 releases related to that changes also. And there is no nightly build for r8198, I compiled it from trunk on local machine. After build, there was localizations inside the app, but trunk build started only in English localization ;-) Thanks guys, you and Transmission realy roxxx!

comment:22 Changed 13 years ago by livings124

  • Milestone changed from 1.60 to 1.52

1.5x: r8203

comment:23 Changed 13 years ago by nikk

Yeah, after compiling r8203 from 1.5x branch there is no error on load, Russian localization works, and no freezes at all. UI smooth and fast, speed of the same test torrent as good as in 1.42 release. Total download time 1min 10 sec. r8203 backport changes nothing, and r8198 must be in 1.52 release as soon as possible, all mac users will say thanks :)

My 1.25 Ghz PPC mac mini now happy also with it, thanks, thanks, thanks ;-)

comment:24 Changed 13 years ago by livings124

  • Severity changed from Normal to Major

comment:25 Changed 12 years ago by nikk

  • Resolution fixed deleted
  • Status changed from closed to reopened

I bump this ticket again. After upgrading from Leopard 10.5 to Snow Leopard 10.6 and transmission 1.75 (9112) i have slow transmission UI again under high load. I have only one test torrent with 60+ peers and transfer rate about 3mb/s, and have spinning circle and laggy context menus 50% of time. Can this be related to r7798 changes too?

comment:26 Changed 12 years ago by nikk

And the Shark output if it helps:

http://transmission.pastebin.com/m72096d42

comment:27 Changed 12 years ago by charles

  • Resolution set to fixed
  • Status changed from reopened to closed

I don't see how it could be related, since the r7798 changes were removed in r8198 do not exist in 9112.

This new slowdown is an issue we can look into, but since it seems to be unrelated to this one, please put it in a new ticket to keep things tidy. ;)

Note: See TracTickets for help on using tickets.