Changeset f846ac in git
- Timestamp:
- Jul 5, 2019, 3:31:35 PM (5 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- e2e2f765be02bebe5d52e7767512e55fa395ece8
- Parents:
- a40b288857c4e60c94e2f3ab2715381bf097761c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libpolys/polys/flint_mpoly.cc
ra40b28 rf846ac 330 330 331 331 convert_sing_to_fmpq_mpoly_arg * args = new convert_sing_to_fmpq_mpoly_arg[base.num_threads]; 332 slong cur_idx = 0; 332 333 for (slong i = 0; i < base.num_threads; i++) 333 334 { 335 slong next_idx = i + 1 < base.num_threads ? (i + 1)*base.length/base.num_threads : base.length; 336 next_idx = FLINT_MAX(next_idx, cur_idx); 337 next_idx = FLINT_MIN(next_idx, base.length); 334 338 args[i].base = &base; 335 args[i].start_idx = (i+0)*base.length/base.num_threads; 336 args[i].end_idx = (i+1)*base.length/base.num_threads; 339 args[i].start_idx = cur_idx; 340 args[i].end_idx = next_idx; 341 cur_idx = next_idx; 337 342 } 338 343 … … 464 469 465 470 convert_fmpq_mpoly_to_sing_arg * args = new convert_fmpq_mpoly_to_sing_arg[base.num_threads]; 471 slong cur_idx = 0; 466 472 for (slong i = 0; i < base.num_threads; i++) 467 473 { 474 slong next_idx = i + 1 < base.num_threads ? (i + 1)*base.f->zpoly->length/base.num_threads 475 : base.f->zpoly->length; 476 next_idx = FLINT_MAX(next_idx, cur_idx); 477 next_idx = FLINT_MIN(next_idx, base.f->zpoly->length); 468 478 args[i].base = &base; 469 args[i].start_idx = (i+0)*base.f->zpoly->length/base.num_threads; 470 args[i].end_idx = (i+1)*base.f->zpoly->length/base.num_threads; 479 args[i].start_idx = cur_idx; 480 args[i].end_idx = next_idx; 481 cur_idx = next_idx; 471 482 args[i].poly_end = NULL; 472 483 args[i].poly_start = NULL; … … 609 620 610 621 convert_sing_to_nmod_mpoly_arg * args = new convert_sing_to_nmod_mpoly_arg[base.num_threads]; 622 slong cur_idx = 0; 611 623 for (slong i = 0; i < base.num_threads; i++) 612 624 { 625 slong next_idx = i + 1 < base.num_threads ? (i + 1)*base.length/base.num_threads 626 : base.length; 627 next_idx = FLINT_MAX(next_idx, cur_idx); 628 next_idx = FLINT_MIN(next_idx, base.length); 613 629 args[i].base = &base; 614 args[i].start_idx = (i+0)*base.length/base.num_threads; 615 args[i].end_idx = (i+1)*base.length/base.num_threads; 630 args[i].start_idx = cur_idx; 631 args[i].end_idx = next_idx; 632 cur_idx = next_idx; 616 633 } 617 634 … … 717 734 718 735 convert_nmod_mpoly_to_sing_arg * args = new convert_nmod_mpoly_to_sing_arg[base.num_threads]; 736 slong cur_idx = 0; 719 737 for (slong i = 0; i < base.num_threads; i++) 720 738 { 739 slong next_idx = i + 1 < base.num_threads ? (i + 1)*base.f->length/base.num_threads 740 : base.f->length; 741 next_idx = FLINT_MAX(next_idx, cur_idx); 742 next_idx = FLINT_MIN(next_idx, base.f->length); 721 743 args[i].base = &base; 722 args[i].start_idx = (i+0)*base.f->length/base.num_threads; 723 args[i].end_idx = (i+1)*base.f->length/base.num_threads; 744 args[i].start_idx = cur_idx; 745 args[i].end_idx = next_idx; 746 cur_idx = next_idx; 724 747 args[i].poly_end = NULL; 725 748 args[i].poly_start = NULL;
Note: See TracChangeset
for help on using the changeset viewer.