Arvid Norberg
|
25ad24ec68
|
piece picker optimization. O(log n), lookup of downloading pieces instead of O(n)
|
2011-08-15 04:16:43 +00:00 |
Arvid Norberg
|
88441e4fdc
|
another attempt at optimizing piece picker
|
2011-08-14 23:16:12 +00:00 |
Arvid Norberg
|
141ada013f
|
fixed a whole bunch of build warnings on gcc and msvc, along with some fixes discovered along the way
|
2011-02-21 05:24:41 +00:00 |
Arvid Norberg
|
a42d42fd11
|
CPU optimization for end-game piece picker
|
2011-02-09 02:56:00 +00:00 |
Arvid Norberg
|
3d616f894e
|
end-game mode optimizations
|
2011-02-06 23:40:21 +00:00 |
Arvid Norberg
|
45f535e80c
|
fixed build (with fresh boost)
|
2010-10-09 02:58:56 +00:00 |
Arvid Norberg
|
f11b1ce6a0
|
fixed failing invariant check in peer_connection's download queue
|
2010-10-03 22:06:53 +00:00 |
Arvid Norberg
|
b6f92aa981
|
added initial support for share-mode
|
2010-09-05 16:01:36 +00:00 |
Arvid Norberg
|
23ba8c8a72
|
fixed synchronization issue between download queue and piece picker
|
2010-05-13 06:29:33 +00:00 |
Arvid Norberg
|
1f44ec75a0
|
fixed bug in add_piece() that would trigger asserts
|
2010-05-01 17:47:28 +00:00 |
Arvid Norberg
|
e3a9578e2d
|
fixed some shadow warnings
|
2010-03-06 07:16:39 +00:00 |
Arvid Norberg
|
eff49e42a7
|
added support for torrents with odd piece sizes
|
2010-02-23 16:26:24 +00:00 |
Arvid Norberg
|
f31e670fc2
|
made end-game mode less aggressive
|
2010-02-18 17:26:21 +00:00 |
Arvid Norberg
|
39dae9e6dc
|
some GCC 2.95 support fixes and some BeOS support
|
2009-11-28 22:41:21 +00:00 |
Arvid Norberg
|
e1aa90daab
|
header dependency fixes
|
2009-11-26 21:05:57 +00:00 |
Arvid Norberg
|
6343fe6a6d
|
optimized header dependencies to lower build time
|
2009-11-23 08:38:50 +00:00 |
Arvid Norberg
|
9d1989904b
|
some compatibility fixes.
|
2009-10-20 16:44:11 +00:00 |
Arvid Norberg
|
ae3be201c4
|
reduced the number of floating point operations to better support systems with no FPU
|
2009-07-19 04:59:27 +00:00 |
Arvid Norberg
|
f0134c1b11
|
improved disk error handling and expanded use of error_code in error reporting
|
2009-06-10 08:30:55 +00:00 |
Arvid Norberg
|
bd33814376
|
improve disk error handling
|
2009-05-31 22:41:53 +00:00 |
Arvid Norberg
|
12dd8a8723
|
build windows python bindings with geoip support. fixes some warnings in msvc
|
2009-04-26 21:21:31 +00:00 |
Arvid Norberg
|
40c6db3c52
|
debug define fix in piece_picker
|
2009-04-04 21:50:36 +00:00 |
Arvid Norberg
|
3f94cc8857
|
made the sequential download mode slightly more sequential (by letting more categories of peers request early pieces). Disabled speed affinity and prefer_whole_pieces when in sequential download mode
|
2009-01-14 09:07:27 +00:00 |
Arvid Norberg
|
d07ccaf6b8
|
workaround for sparse files issue on Windows vista
|
2009-01-05 01:08:09 +00:00 |
Arvid Norberg
|
09b3a865ef
|
fixed compiler flags in pkg-config file and made header files not depend on the NDEBUG define
|
2008-11-29 21:33:21 +00:00 |
Arvid Norberg
|
7d83bfb6b3
|
fixed pedantic warnings
|
2008-10-26 22:12:12 +00:00 |
Arvid Norberg
|
41808f8742
|
big change to improve piece picker. Better end-game mode. More options on which pieces to pick.
|
2008-09-06 21:04:57 +00:00 |
Arvid Norberg
|
e9045cc1df
|
fixes bug where priorities where lost when force-rechecking.
|
2008-08-25 22:32:50 +00:00 |
cg25
|
ff3e80c42f
|
Removed svn:executable property from {c,h}pp files in branches/RC_0_13 and
trunk.
|
2008-06-25 14:15:21 +00:00 |
Arvid Norberg
|
d2bde64e71
|
makes sure a torrent doesn't have too many pieces than can be handled. Fixes #61
|
2008-06-19 11:28:34 +00:00 |
Arvid Norberg
|
9d1e77dc88
|
optimized away torrent::m_have_pieces (#62) and added some documentation on bitfield. The piece picker is now constructed with the torrent, but still freed when turned into a seed
|
2008-06-07 02:58:28 +00:00 |
Arvid Norberg
|
68c31e48dc
|
replaced vector<bool> with a custom bitfield type
|
2008-05-28 02:35:02 +00:00 |
Arvid Norberg
|
f53cfa7eeb
|
removed checker thread
|
2008-03-08 06:06:31 +00:00 |
Arvid Norberg
|
333839c9b4
|
piece picker update
|
2008-02-18 03:07:14 +00:00 |
Arvid Norberg
|
c798ab30e1
|
rewrote the piece picker to be more cpu and memory efficient. replaces the concept of sequential-download-threshold with just a sequential download settings
|
2008-01-31 17:52:29 +00:00 |
Arvid Norberg
|
96ba6bc3b2
|
piece picker priority fix
|
2007-10-23 22:10:08 +00:00 |
Arvid Norberg
|
966800cd5b
|
replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert.
|
2007-10-05 00:30:00 +00:00 |
Arvid Norberg
|
3a11c3bfad
|
broadcast socket and piece_picker fix
|
2007-09-15 20:20:07 +00:00 |
Arvid Norberg
|
4fcdea4172
|
piece picker fix
|
2007-09-09 23:46:28 +00:00 |
Arvid Norberg
|
0d6970168d
|
piece picker updates
|
2007-09-06 18:30:46 +00:00 |
Arvid Norberg
|
49dfc4d63d
|
fixed typo
|
2007-09-06 00:51:14 +00:00 |
Arvid Norberg
|
24b57d62c8
|
piece picker fixes and optimizations (requires more tests in unit tests)
|
2007-09-05 21:21:11 +00:00 |
Arvid Norberg
|
6d40519e66
|
added support for piece picker to pick multiple pieces (previously it could only pick one piece tops). Made the web_peer_connection always try to make 1 MB requests at a time. added tests to the piece_picker unit test
|
2007-09-03 21:16:24 +00:00 |
Arvid Norberg
|
fd42f3232b
|
upnp more logging and error recovery
|
2007-09-01 04:08:39 +00:00 |
Arvid Norberg
|
b62bb7944f
|
merged fast-extension => trunk. the fast extension branch is now closed
|
2007-08-14 17:47:48 +00:00 |
Arvid Norberg
|
6e78b6b824
|
optimization to only update peer interests in case a piece was filtered/unfiltered during a priority call
|
2007-08-10 21:13:35 +00:00 |
Arvid Norberg
|
8387240b31
|
more asserts, piece_picker fixes, debug-iterator fixes
|
2007-08-03 06:13:26 +00:00 |
Arvid Norberg
|
1acedb39dc
|
prioritize more complete partial pieces over less complete ones
|
2007-07-15 15:41:55 +00:00 |
Arvid Norberg
|
82e1160214
|
introduced a non-rarest-first option to the piece picker that is used to pick the very first pieces in a torrent
|
2007-07-07 01:26:30 +00:00 |
Arvid Norberg
|
a3e66a3efe
|
made the piece picker handle multi-request blocks better. fixes problem that might occur at the end of a torrent where the piece picker could take over blocks back and forth
|
2007-07-06 17:15:35 +00:00 |
Arvid Norberg
|
3bdf01778a
|
chamged peer representation from tcp::endpoint to policy::peer pointer in piece_picker's downloading piece. Saves memory, removes the need for lookup and improves the hash check fail/pass handling for closed connections
|
2007-07-04 02:16:49 +00:00 |
Arvid Norberg
|
3b8670626a
|
merged back async_io branch into trunk
|
2007-06-10 20:46:09 +00:00 |
Arvid Norberg
|
14a15831ef
|
exposed piece availability vector
|
2007-05-30 06:52:59 +00:00 |
Arvid Norberg
|
8392276975
|
speed categories are now disabled before 1% of the pieces have been downloaded
|
2007-05-14 10:54:18 +00:00 |
Arvid Norberg
|
6dcca9250b
|
optimized heap allocations in piece_picker. #42
|
2007-05-09 00:49:13 +00:00 |
Arvid Norberg
|
4956639171
|
piece picker optimization
|
2007-05-08 11:13:13 +00:00 |
Arvid Norberg
|
ee1681e2cb
|
added peer/piece categories to the piece picker. fixes #18
|
2007-04-27 00:27:37 +00:00 |
Arvid Norberg
|
60ddb5c64a
|
piece_picker fix
|
2007-04-18 20:40:41 +00:00 |
Arvid Norberg
|
067219d14a
|
made downloading pieces higher priority. fix in piece picker when blocks in prio 0 pieces were marked as finished
|
2007-04-17 09:21:53 +00:00 |
Arvid Norberg
|
40804a829b
|
failcount is reset on a peer that successfully connects. documented max_failcount and min_reconnect_time. implemented seed optimization for piece_picker (inc_refcount_all and dec_refcount_all), ticket #17
|
2007-04-15 02:14:02 +00:00 |
Arvid Norberg
|
87b1cdc341
|
fix to avoid connecting web seeds when not a seed but finished
|
2007-04-11 22:27:58 +00:00 |
Arvid Norberg
|
776b399a97
|
added api for piece priorities
|
2007-03-20 01:59:00 +00:00 |
Arvid Norberg
|
7ff5893431
|
reverted bad check-in where files_checked was removed from piece_picker
|
2007-03-17 17:28:59 +00:00 |
Arvid Norberg
|
4ac08f393a
|
simplified the piece picker by initializing it properly in its constructor. Removed natpmp reporting port map success when removing mappings. fix where incoming connections before the files were completely checked would cause an assert.
|
2007-03-16 23:28:26 +00:00 |
Arvid Norberg
|
ecaa3068d5
|
added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process.
|
2007-03-15 22:03:56 +00:00 |
Arvid Norberg
|
87f7b186b0
|
replaced the bandwidth throttling code with a leaky bucket for better accuracy
|
2007-01-10 15:02:25 +00:00 |
Arvid Norberg
|
1b46fb9e1b
|
fixed an assert in teh web seed downloader
|
2006-12-21 02:44:00 +00:00 |
Arvid Norberg
|
191fd76b42
|
made sequenced_download_threshold a per torrent setting. Updated the project page layout. Removed incorrect invariant checks in piece picker.
|
2006-09-04 17:17:45 +00:00 |
Arvid Norberg
|
8d31bf442a
|
fixed incorrect sorting of pieces in piece_picker
|
2006-07-16 00:08:50 +00:00 |
Arvid Norberg
|
41810b1166
|
merged back the asio development branch
|
2006-04-25 21:04:48 +00:00 |
Arvid Norberg
|
3f36dd0395
|
added the ability to build libtorrent as a shared library. Fixed bugs with deleting of incomplete types (replaced auto_ptr with scoped_ptr). Made the string converter fall back on windows local code page if utf-8 decoding failed.
|
2005-11-01 18:30:39 +00:00 |
Arvid Norberg
|
a15f589341
|
fixed problem in piece_picker with filtered files, also optimzed it somewhat. Added more logging and added one test to the piece_picker test
|
2005-09-01 21:04:21 +00:00 |
Arvid Norberg
|
1934171431
|
bugfixes, fixes for boost 1.33, made the piece picker pick whole pieces from fast peers
|
2005-08-14 22:04:58 +00:00 |
Arvid Norberg
|
1bc22888a8
|
*** empty log message ***
|
2005-06-10 23:12:50 +00:00 |
Arvid Norberg
|
fbffae1981
|
*** empty log message ***
|
2005-05-30 17:43:03 +00:00 |
Arvid Norberg
|
2fabb2bf80
|
experimental support for filtering pieces (filter from downloading that is)
|
2005-05-25 10:01:01 +00:00 |
Arvid Norberg
|
6ff7e76ab2
|
*** empty log message ***
|
2005-03-19 12:22:40 +00:00 |
Arvid Norberg
|
9154e37e3a
|
*** empty log message ***
|
2005-02-23 16:56:32 +00:00 |
Arvid Norberg
|
bc774ff491
|
*** empty log message ***
|
2004-11-30 11:17:32 +00:00 |
Arvid Norberg
|
579d63f49d
|
*** empty log message ***
|
2004-09-16 01:14:16 +00:00 |
Magnus Jonsson
|
7fe3323ced
|
added num_seeds and distributed_copies to torrent_status
|
2004-08-05 13:56:26 +00:00 |
Arvid Norberg
|
5d65eab1bd
|
*** empty log message ***
|
2004-03-01 00:50:00 +00:00 |
Arvid Norberg
|
423eee8cfb
|
*** empty log message ***
|
2004-02-01 09:47:58 +00:00 |
Arvid Norberg
|
fc74e19224
|
*** empty log message ***
|
2004-01-26 10:29:00 +00:00 |
Arvid Norberg
|
1eaa0877c8
|
*** empty log message ***
|
2004-01-26 00:21:12 +00:00 |
Magnus Jonsson
|
23288c74f5
|
*** empty log message ***
|
2004-01-25 22:41:55 +00:00 |
Arvid Norberg
|
0dbbc18186
|
removed most warnings on msvc.
reimplemented piece_manager::check_pieces to take care of all possible cases of the storage state.
|
2004-01-25 18:18:36 +00:00 |
Arvid Norberg
|
19a4dad706
|
*** empty log message ***
|
2004-01-24 17:14:03 +00:00 |
Arvid Norberg
|
410b35f95e
|
*** empty log message ***
|
2004-01-15 16:45:34 +00:00 |
Arvid Norberg
|
abbedbf104
|
*** empty log message ***
|
2004-01-13 03:08:59 +00:00 |
Arvid Norberg
|
b6c826c6af
|
*** empty log message ***
|
2004-01-12 20:31:27 +00:00 |
Arvid Norberg
|
3033f16f47
|
*** empty log message ***
|
2004-01-03 02:10:11 +00:00 |
Arvid Norberg
|
cb89ccf6be
|
*** empty log message ***
|
2003-12-18 03:30:41 +00:00 |
Arvid Norberg
|
6325295993
|
*** empty log message ***
|
2003-11-04 23:27:06 +00:00 |
Arvid Norberg
|
8b61436561
|
Increased performance. Fixed a bug. Extended torrent_handle interface.
|
2003-11-02 21:06:50 +00:00 |
Arvid Norberg
|
d7f92afea3
|
*** empty log message ***
|
2003-10-29 23:28:09 +00:00 |
Arvid Norberg
|
1800e63c09
|
*** empty log message ***
|
2003-10-23 16:55:52 +00:00 |
Arvid Norberg
|
ec34b1bfdb
|
Initial commit of 'new' libtorrent.
The Jamfile is broken and will hopefully be fixed soon.
|
2003-10-22 23:00:57 +00:00 |