21 comments

[ 3.4 ms ] story [ 53.5 ms ] thread
How does this compare, featurewise/speedwise, to popular (yet simple and powerful) clients like Deluge?

I ask because I'm not seeing an FAQ, list of features or User Manual documentation on the linked page.

Both are built on Rasterbar-libtorrent and should provide equal performance if configured the same, which I would definitely see as a goal.

Feature wise, PicoTorrent is lacking. Most popular features will be implemented, along with a plugin API. Right now, nothing more than the basics is implemented.

I'll try to put this, along with other information, in a FAQ asap.

>Both are built on Rasterbar-libtorrent and should provide equal performance if configured the same

Eh...Deluge has made a number of changes to libtorrent that aren't replicable solely by config tweaks. Such as lying about what pieces that client currently has, lying about connections and others in order to get the tracker to assign more peers and increase per-peer connections. Deluge also abuses the ever-loving-crap out of memory, since it doesn't use the system memory manager and, at least last I looked, their home built caching system was horribly broken (that is, they goto-failed their own manager) which leads to horrible flush to disk scenarios that kill speeds.

Interesting! I did not know this. If their tweaks work, I guess Deluge may have a performance advantage.

We follow the latest vanilla libtorrent sources (not bound by releases), and try to keep our C++ as close to the Windows API as possible. The only dependency we have is libtorrent (plus Boost and OpenSSL since libtorrent depends on those).

how does it compare to uTorrent 2.2?
Something like 10-11x bigger installer lol. It's really tiny. Don't have a Windows box so I can't say how similar .EXE's, RAM, and CPU usage are.
The PicoTorrent executable is somewhere around 5-6MB. RAM and CPU usage should be low to tiny if I haven't made a mistake and leak memory all over the place :) The reason our executable is so much bigger is that we have a few indirect dependencies on Boost and OpenSSL (via libtorrent).

I'm open for suggestions on how to reduce size.

I was just picking at you as the uTorrent author and his work were among best at low-fat, GUI apps. Steve Gibson at GRC comes to mind, too. 5-6MB is better than many.

Anyway, I'm not sure what can be done with Boost: just too complicated. Maybe replacing what you use in it with lightweight alternative. However, you could see if you can replace OpenSSL with LibreSSL. OpenBSD team trimmed out hundreds of KB of fat and problematic code out of OpenSSL when building it. You get better security, too. :)

http://www.libressl.org/

Note: Mac OS X already uses it. So, it must work decent by now.

+ Open source

+ Not spyware

+ No ads

utorrent 2.2 doesn't have ads or spyware.
This looks pretty neat. I've been using qBittorrent on Windows, but it doesn't really support bulk operations, so I've been writing Python scripts[0] to accomplish what I need. Please, cater to the users that need to idle with tons of torrents open all the time and make it easy to import/export the current state of the torrents loaded into client.

Also, shameless plug -- I work on an open source BitTorrent tracker[1] that was adopted by Facebook for deploying their server software and have been playing around with a framework for writing tracker logic via middleware[2]. If you want to talk about any of the client <> tracker interactions, I'm totally down for discussion.

[0]: https://github.com/jzelinskie/move_torrents.py

[1]: https://github.com/chihaya/chihaya

[2]: https://github.com/jzelinskie/otoshi

Very nice. μTorrent has long been riddled with ad's (with sound for gates sake!) and Deluge feels a little slow and bulky on my machine. This looks like a lighter alternative.
For those who use private trackers, it would take awhile for this to get whitelisted.
This is true, however we still run PicoTorrent under the default libtorrent peer ID which is whitelisted on a few private trackers as well.
Looks promising, I'm using it. Keep up your good work!
Installer 5,55MB, installed size: 20,6MB. That's not pico, more like mili- or centi- as compared to uTorrent. For comparison, another open source bit-torrent client Halite (https://github.com/Eoinocal/Halite) weighs at 2,34MB (installer) and 12MB installed.

Installer didn't even ask where I want to install it and did not display any success message, informing about successful installation. Needs more install options for power users. Also portable (zip) version would be a big plus.

More comments more, maybe, because PicoTorrent fails to work in Sandboxie.

Hi, the reason PicoTorrent is 20MB installed is that we ship the PDB file in the installer. In the future, the PDB file will be optional. The actual executable is around 5,5MB. We ship the PDB file with the installer to help with issues now in the beginning - to print stack traces (with symbol names) if it crashes, etc.

The installer will receive a nice update with a user interface in the next version.

Thanks for the input! :)

Ninja Edit: I'll take a look at fixing whatever is making PicoTorrent not work in Sandboxie.

Thanks for explanation. I sure hope final release will be really "pico" :D I'll try to test it out some more over the weekend on a real OS, not sandbox.