This commit is contained in:
Christopher Taylor 2017-05-27 21:44:42 -07:00
parent 6bf48a9c4a
commit d66da163f9
2 changed files with 11 additions and 7 deletions

View File

@ -846,14 +846,18 @@ void Encode(
// work <- data
// FIXME: Unroll first loop to eliminate this
for (unsigned i = 0; i < original_count; ++i)
unsigned first_end = m;
if (original_count < m)
{
first_end = original_count;
for (unsigned i = original_count; i < m; ++i)
memset(work[i], 0, buffer_bytes);
}
for (unsigned i = 0; i < first_end; ++i)
memcpy(work[i], data[i], buffer_bytes);
for (unsigned i = original_count; i < m; ++i)
memset(work[i], 0, buffer_bytes);
// work <- IFFT(data, m, m)
const unsigned first_end = (original_count < m) ? original_count : m;
for (unsigned width = 1; width < m; width <<= 1)
{
const unsigned range = width << 1;

View File

@ -389,11 +389,11 @@ struct TestParameters
unsigned original_count = 1000; // under 65536
unsigned recovery_count = 100; // under 65536 - original_count
#else
unsigned original_count = 128; // under 65536
unsigned recovery_count = 128; // under 65536 - original_count
unsigned original_count = 200; // under 65536
unsigned recovery_count = 20; // under 65536 - original_count
#endif
unsigned buffer_bytes = 64000; // multiple of 64 bytes
unsigned loss_count = 128; // some fraction of original_count
unsigned loss_count = 20; // some fraction of original_count
unsigned seed = 0;
bool multithreaded = true;
};