You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by gi...@git.apache.org on 2017/08/14 21:24:36 UTC

[GitHub] bikestra opened a new issue #7462: [gluon] nomenclature for hybrid computation

bikestra opened a new issue #7462: [gluon] nomenclature for hybrid computation
URL: https://github.com/apache/incubator-mxnet/issues/7462
 
 
   I find that names like HybridBlock, HybridSequential, and hybridize() in gluon are not effectively conveying what their utilities and usages are. To me, 'HybridBlock' sounds like a mixture of 'Block' and something else, although it is actually an extension of a Block. Also, calling hybridize() sounds like imperative and symbolic program will be mixed in executions, although in reality, calling it makes an one-way transition of the block from an imperative program to a symbolic program. Lastly, 'hybrid' is an ambiguous word which meaning is unclear until a user takes a careful look at the hybrid computation tutorial.
   
   Proposal: Why don't we call these CompilableBlock, CompilableSequential, and compile()? Then, it should be clear CompilableBlocks are extensions of Blocks, and executions of CompilableBlocks will be faster after calling compile() than they were before, because 'compile' is a concept most programmers are familiar with.
   
   Furthermore, from the API design point of view, it might be clearer if compile() creates a new Block rather than changing the state of an exiting HybridBlock. Then it should be clear that CompilableBlock is still an imperative program, whereas CompilableBlock.compile() is a declarative program.
   
   I am curious what others' thoughts on this are. Tagging @szha since I talked with him on this separately.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services