Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Thread mapping #3

Merged
merged 34 commits into from
May 5, 2018
Merged

Thread mapping #3

merged 34 commits into from
May 5, 2018

Conversation

ulysseB
Copy link
Owner

@ulysseB ulysseB commented Mar 29, 2018

Changes the encoding of the mapping of thread dimensions to hardware dimensions. Reduces the memory pressure by a factor of 2x and the amount of deadends by a factor of 10x.

Needs to:

  • Fix the computation of global parallelism
  • Individualise the waste computation
  • Make bound_order exploration work on mm
  • Assess the effect on bounds accuracy

@ulysseB ulysseB self-assigned this Mar 29, 2018
@ulysseB ulysseB force-pushed the thread-mapping branch 3 times, most recently from 23651a5 to b261c9d Compare April 25, 2018 10:04
ulysseB pushed a commit that referenced this pull request Apr 27, 2018
* Lock the Cargo manifest\!

* pre-implementation of flex

* reconfigure travis as nightly

* naive first implementation of C part exh-lang's lexer

* C union representation

* Enumeration CmpOp

* add yystr rules and incomplet test

* fixe a bit of F/lex syntax with first short test

* add second test for code's token

* reset test as a complet list of token, add of a null character to the end of all inputs, this need a investigation to found another syntax

* fixe test

* not need null character, solve it with yy_scan_bytes function

* implementation of c comment

* naive implementation of DOC token

* Blank Token as mute (not needed by Gen)

* mute c warning of generated by f/lex's unused variables

* remove unnecessary ffi prefix

* allow dead code for ffi

* allow unused {function,variable,parameter} for {F/lex,C}

* fixe dependency gcc as cc, see issue #3

* rewrite DOC token with a start condition

* fixe // comment

* retarget test for cc_test

* comment rule

* ast doc recursive concat

* enable all compilation

* prepare travis PR

* add feature lex, need this feature to generate the lexer, or else a default lexer will be used

* by default, travis will regenerate the lexer too
ulysseB pushed a commit that referenced this pull request May 3, 2018
* Lock the Cargo manifest\!

* pre-implementation of flex

* reconfigure travis as nightly

* naive first implementation of C part exh-lang's lexer

* C union representation

* Enumeration CmpOp

* add yystr rules and incomplet test

* fixe a bit of F/lex syntax with first short test

* add second test for code's token

* reset test as a complet list of token, add of a null character to the end of all inputs, this need a investigation to found another syntax

* fixe test

* not need null character, solve it with yy_scan_bytes function

* implementation of c comment

* naive implementation of DOC token

* Blank Token as mute (not needed by Gen)

* mute c warning of generated by f/lex's unused variables

* remove unnecessary ffi prefix

* allow dead code for ffi

* allow unused {function,variable,parameter} for {F/lex,C}

* fixe dependency gcc as cc, see issue #3

* rewrite DOC token with a start condition

* fixe // comment

* retarget test for cc_test

* comment rule

* ast doc recursive concat

* enable all compilation

* prepare travis PR

* add feature lex, need this feature to generate the lexer, or else a default lexer will be used

* by default, travis will regenerate the lexer too

* Update comment liking to lex doc.

* sync

* replace drain_filter by all,filter for stabilize rust as stable channel

* retain fixe is_subset_of_def as reverse, remark, this line is uncovered by any test

* fixe coding style, closure as for, not as !

* dereferencing var

* disable documentation generation
@ulysseB ulysseB merged commit a0a249a into master May 5, 2018
@ulysseB ulysseB deleted the thread-mapping branch May 5, 2018 14:38
ulysseB pushed a commit that referenced this pull request Jun 14, 2018
* Lock the Cargo manifest\!

* pre-implementation of flex

* reconfigure travis as nightly

* naive first implementation of C part exh-lang's lexer

* C union representation

* Enumeration CmpOp

* add yystr rules and incomplet test

* fixe a bit of F/lex syntax with first short test

* add second test for code's token

* reset test as a complet list of token, add of a null character to the end of all inputs, this need a investigation to found another syntax

* fixe test

* not need null character, solve it with yy_scan_bytes function

* implementation of c comment

* naive implementation of DOC token

* Blank Token as mute (not needed by Gen)

* mute c warning of generated by f/lex's unused variables

* remove unnecessary ffi prefix

* allow dead code for ffi

* allow unused {function,variable,parameter} for {F/lex,C}

* fixe dependency gcc as cc, see issue #3

* rewrite DOC token with a start condition

* fixe // comment

* retarget test for cc_test

* comment rule

* ast doc recursive concat

* enable all compilation

* prepare travis PR

* add feature lex, need this feature to generate the lexer, or else a default lexer will be used

* by default, travis will regenerate the lexer too

* Update comment liking to lex doc.

* sync

* replace drain_filter by all,filter for stabilize rust as stable channel

* retain fixe is_subset_of_def as reverse, remark, this line is uncovered by any test

* fixe coding style, closure as for, not as !

* dereferencing var

* add benchmark for lexer

* criterion manifest

* manifest travis now checks rust as stable

* fixe auto example according to issue  #5330

* add poc.l to dependency condition of Cargo rebuilt

* enable f/lex feature yylineno, implemente YY_EXTRA and YY_USER, lalrpop now have a leg/end's Position

* naive reforcement lexer test with Position check, next check will add verification for multiline and comment

* move enumerations from l to include/h

* documentation renforcement

* compile lexer with source include for C header

* rewrite define extra-type by option extra-type and implemente line/column position for line_doc and c_comment

* recompile lexer

* add case for line/colum of line/doc and c_comment

* the destructor of lexer clears the disingenuous yylineno

* InvalidToken is now returned as error from the lexer part

* move Invalid from Token to LexicalError

* add macro pub_generated_file to create a public module for extern usages like parser test

* parse is now a public module, process/file can now returns a parser error

* invalidToken checks for lexer\&parser

* unwrap returns of process/file

* generated_file as (pub) macro; danielkeep.github.io/tlborm/book/pat-visibility.html

* keyword pub

* solve

* regenerate lexer

* solve merge

* statement is typed by enumerations for list

* pre test for ast type checker

* the parser returns a list of statement with a naive position

* remove unused example

* pre enum multiple name field

* resolve borrow for enum def stmt

* move enum_stmt into submod

* test enum_multi_name_field

* clone interface for Pos

* more test for enum, dispatches check from enum constructor to enum implementation interface

* change all's unecessary closure to for, add missing_alias_value check, pre test Set

* split AST test into two sub test named set and enum; add test for missing key and multi name from Set

* reorganize Ast test into sub-folder Typing

* Rename multi to redefinition

* IdGetter field check for set

* rewrite enum_check_value, that now include alias in the value list

* fixe name test

* returns as EnumDef directly

* implementation of check functions inside TypingContext

* complete test undefined fields set, add test undefined parametric set

* add check undefined set or enum

* pre test subsetof

* add superset field checks

* add test for undefined parametric superset, and rewrite name functions for more coherence

* intermediate

* pre re-modules

* regression type enum to stringigy type

* add test set_field_redefinition

* rename Error Symmetric into BadSymmetricArg
adjivas added a commit that referenced this pull request Jun 19, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant