-
Notifications
You must be signed in to change notification settings - Fork 117
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Cusignal nodes for Greenflow. #141
Conversation
9c400d8
to
8dbfd84
Compare
* Added convolution nodes and a convolution notebook example. * Add sdr example. * Expose build option to taskgraph run method. * Fix memory leak by avoiding non-visited nodes in flow method. * Add setup.py to cusignal greenflow plugin for streamlined installation. * Using TemplateNodeMixin for cusignal nodes.
8dbfd84
to
47ebc73
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a few comments. Since this is a stand alone plugin, could you add a README file to describe how to install and use this plugin like other plugins?
gQuant/plugins/cusignal_plugin/greenflow_cusignal_plugin/convolution/fftconvolve.py
Show resolved
Hide resolved
gQuant/plugins/cusignal_plugin/greenflow_cusignal_plugin/gensig/wavefilereader.py
Show resolved
Hide resolved
# FIXME: This is inconsistent. Above for __contains__, __iter__, and | ||
# __next__, the returned object is a Task instance. Here however | ||
# the returned object is a Node instance. | ||
if not self.__node_dict: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good point. We need to change the API in the future to something like
def get_node(self, key):
and put a warning message inside this function that it is deprecated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that makes sense. We can do this in the future.
In the - conf: {}
id: ''
inputs:
in1: cumulative_return.cum_return
in2: sharpe_ratio.sharpe_out
module: rapids_modules
type: Output_Collector Need to remove the Similarly in the - conf: {}
id: ''
inputs:
in1: stock_selector.stock_name
in2: lineplot.lineplot
in3: barplot.barplot
in4: sharpe_ratio.sharpe_out
in5: cumulative_return.cum_return
in6: stock_data.cudf_out
module: rapids_modules
type: Output_Collector also in the |
unittest
|
Thanks for the review. I fixed the unit test to account for output collector calls and added a README file. |
looks good. I will merge it. |
Added convolution nodes and a convolution notebook example.
Work in progress.
I'm going to add more examples.
Refer to notebook:
https://github.com/avolkov1/gQuant/blob/cusignal_example/gQuant/plugins/cusignal_plugin/notebooks/convolution_examples.ipynb
The plugin can be found here:
https://github.com/avolkov1/gQuant/tree/cusignal_example/gQuant/plugins/cusignal_plugin/greenflow_cusignal_plugin
I am currently using the "greenflowrc" to register the plugin. Later I'll add a setup.py and register via "greenflow.plugin".
To run checkout my branch. Then set "greenflowrc" as follows:
Where my modulepath is a directory from which I symlinked to the plugins.
I startup jupyter lab via:
I added pydot plotting options to "TaskGraph.draw". You'll need to
pip install -e greenflow
.