Skip to content

Commit

Permalink
Merge pull request #185 from pyiron/update_readme
Browse files Browse the repository at this point in the history
Update readme and demos
  • Loading branch information
liamhuber authored Apr 6, 2023
2 parents 246aed0 + efb3a1d commit bf8e463
Show file tree
Hide file tree
Showing 3 changed files with 493 additions and 366 deletions.
10 changes: 7 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ If there is a particular use-case you'd like to see, or if one of our nodes is n

![](docs/_static/screenshot.png)

In its current form, ironflow has some UI performance issues, especially when placing new nodes with many ports, or moving nodes around in a big graph.
(You can look at the movie demonstrating ontological typing below to get a sense of the delay for placing larger nodes.)
This is a [known issue](https://github.com/pyiron/ironflow/issues/143) and performance enhancements are currently our top priority -- both in terms of UI performance and underlying computations, e.g. we would like to exploit the latest pyiron developments for [running lammps without writing any files](https://github.com/pyiron/pyiron_lammps) in calculation nodes.
In its current form, ironflow has some UI performance issues when verifying the ontological status of ports.
For smaller graphs, e.g. those in the examples, things should still feel quite snappy -- so if you notice serious performance issues please raise an issue! -- but for larger graphs, e.g. many 10s of nodes, you may notice some delay when generating the "recommended" nodes and ports on selection of an ontologically-typed port, and on updating the otype status on making new connections.
This is a [known issue](https://github.com/pyiron/ironflow/issues/182), but not top-priority to fix; If you are using ironflow regularly and bumping into this problem a lot, please let us know in the issue and we'll increase its priority.

## Usage

Expand Down Expand Up @@ -56,6 +56,10 @@ These can be triggered by a signal from another node's exec-type output port, or

In addition to the workflows screen, ironflow also incorporates the browser from [`pyiron_gui`](https://github.com/pyiron/pyiron_gui), as well as a log tab that allows you to turn the underlying ryven logger on/off and choose whether stdout gets routed to ironflow or its original context.

Two notes on the logger:
- The log re-routes pythons stdout to the log panel! This includes the output of `print` statements from any other cells in your notebook. To see these in their original context again, you'll need to go to the log panel and toggle off "Route stdout to ironflow", or initialize your gui with the kwarg `log_to_display=False`.
- The underlying Ryvel model supports fairly detailed logging. Since handling IO is not the fastest operation in python, and the log is fairly dense, this is _turned off by default_. You will still get error messages etc. in the log, but to see info-level log messages you need to go to the log panel and toggle on "Use Ryven's InfoMsgs system" or initialize your gui with the kwarg `enable_ryven_log=True`. Note that this will induce a performance hit on most actions. Performance can be restored by turning the Ryven logging off again, and you may get a further (extremely marginal) improvement by clearing the existing log history with the "Clear" button in the log panel.

## Differences to Ryven

Ironflow is built on top of ryvencore 0.3.1.1.
Expand Down
35 changes: 31 additions & 4 deletions notebooks/example.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,37 @@
"id": "a0a60e2d",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"* Owlready2 * Warning: optimized Cython parser module 'owlready2_optimized' is not available, defaulting to slower Python implementation\n"
]
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
],
"text/plain": []
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
],
"text/plain": []
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "c4c570c4595c48c29403a12eabf5441f",
"model_id": "d5dfcda92a5c417e802dfbb27471e21f",
"version_major": 2,
"version_minor": 0
},
Expand Down Expand Up @@ -51,7 +78,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "0f3790b791e644f9ab133675e0cb3145",
"model_id": "bcf8e7d08f6942d59d196a1413cb15bd",
"version_major": 2,
"version_minor": 0
},
Expand Down Expand Up @@ -162,7 +189,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
Expand All @@ -176,7 +203,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.8"
"version": "3.11.0"
}
},
"nbformat": 4,
Expand Down
Loading

0 comments on commit bf8e463

Please sign in to comment.