GithubHelp home page GithubHelp logo

catid / shorthair Goto Github PK

View Code? Open in Web Editor NEW
128.0 12.0 21.0 2.76 MB

Shorthair : Generational Block Streaming Erasure Codes

License: BSD 3-Clause "New" or "Revised" License

C++ 96.95% C 2.85% CMake 0.20%

shorthair's Issues

test performance worsens dramatically after about 2300 sent packets

While running ./tester, I noticed the receive rate suddenly plummets from 99% to below 60% after 2300 sent packets.

2275 of 2290 : 0.99345
2276 of 2291 : 0.993453
2277 of 2292 : 0.993455
2278 of 2293 : 0.993458
2279 of 2294 : 0.993461
2280 of 2295 : 0.993464
2282 of 2296 : 0.993902
2283 of 2297 : 0.993905
2284 of 2298 : 0.993908
2285 of 2299 : 0.99391
2286 of 2300 : 0.993913
2287 of 2301 : 0.993916
2288 of 2302 : 0.993918
2289 of 2303 : 0.993921
2290 of 2304 : 0.993924
2291 of 2305 : 0.993926
2291 of 2306 : 0.993495
2292 of 2307 : 0.993498
2293 of 2308 : 0.993501
2294 of 2309 : 0.993504
2294 of 2310 : 0.993074
2295 of 2311 : 0.993077
2296 of 2312 : 0.99308
2296 of 2313 : 0.99265
2296 of 2314 : 0.992221
2296 of 2315 : 0.991793
2298 of 2316 : 0.992228
2298 of 2317 : 0.9918
2298 of 2318 : 0.991372
2298 of 2319 : 0.990944
2298 of 2320 : 0.990517
2298 of 2321 : 0.99009  <--- 5 unreceived packets in-a-row
2299 of 2322 : 0.990095
2299 of 2323 : 0.989669
2299 of 2324 : 0.989243
2299 of 2325 : 0.988817
2299 of 2326 : 0.988392
2299 of 2327 : 0.987967
2299 of 2328 : 0.987543
2299 of 2329 : 0.987119
2299 of 2330 : 0.986695 <--- another 8
... snip ...
5101 of 8511 : 0.599342
5101 of 8512 : 0.599272
5101 of 8513 : 0.599201
5101 of 8514 : 0.599131
5101 of 8515 : 0.59906
5101 of 8516 : 0.59899
5101 of 8517 : 0.59892
5101 of 8518 : 0.598849
5101 of 8519 : 0.598779
5102 of 8520 : 0.598826
5102 of 8521 : 0.598756
5102 of 8522 : 0.598686
5102 of 8523 : 0.598616
5102 of 8524 : 0.598545
5102 of 8525 : 0.598475
5102 of 8526 : 0.598405
5102 of 8527 : 0.598335

What is especially concerning is that this happens even if I remove the simulated packet loss.

2299 of 2299 : 1
2300 of 2300 : 1
2301 of 2301 : 1
2302 of 2302 : 1
2303 of 2303 : 1
2304 of 2304 : 1
2305 of 2305 : 1
2306 of 2306 : 1
2307 of 2307 : 1
2308 of 2308 : 1
2309 of 2309 : 1
2309 of 2310 : 0.999567
2309 of 2311 : 0.999135
2309 of 2312 : 0.998702
2309 of 2313 : 0.998271
2309 of 2314 : 0.997839
2309 of 2315 : 0.997408
2309 of 2316 : 0.996978
2309 of 2317 : 0.996547
2310 of 2318 : 0.996549
2310 of 2319 : 0.996119
2310 of 2320 : 0.99569
2310 of 2321 : 0.995261
2310 of 2322 : 0.994832
2310 of 2323 : 0.994404
2310 of 2324 : 0.993976
2310 of 2325 : 0.993548
2310 of 2326 : 0.993121
2311 of 2327 : 0.993124

After further experimentation, the drop point appears to happen sooner with a larger TICK_RATE, unless TICK_RATE >= settings.max_delay, at which point it doesn't seem to drop at all.

I've tested this on Mac OSX El Capitan and Ubuntu 14.04 (with gcc).

Any ideas what is going on here? Am I missing something fundamental about the nature of this library?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.