85 Commits

Author SHA1 Message Date
1ae39a8caa Congruent in photons example (#12)
Some checks failed
MetagraphOptimization_CI / docs (push) Failing after 1m50s
MetagraphOptimization_CI / test (push) Failing after 1m53s
Now targeting the correct branches

Co-authored-by: Rubydragon <anton.reinhard@proton.me>
Reviewed-on: #12
2024-07-10 14:17:39 +02:00
b5d92b729c Get compute function working
Some checks failed
MetagraphOptimization_CI / docs (push) Failing after 1m32s
MetagraphOptimization_CI / test (push) Failing after 1m49s
2024-07-04 15:31:22 +02:00
6a9a7b41f1 rework a lot of the QED model to use QEDcore/base/processes 2024-07-03 20:24:53 +02:00
a1581182ca WIP 2024-07-02 10:50:30 +02:00
1b4ba285c3 WIP refactor
Some checks failed
MetagraphOptimization_CI / test (push) Failing after 7m59s
MetagraphOptimization_CI / docs (push) Failing after 8m6s
2024-06-24 23:31:30 +02:00
2921882fd4 EOD
Some checks failed
MetagraphOptimization_CI / docs (push) Failing after 8m32s
MetagraphOptimization_CI / test (push) Failing after 11m24s
2024-05-24 19:20:59 +02:00
d888713e97 Enable oneAPI and ROCm (#9)
All checks were successful
MetagraphOptimization_CI / docs (push) Successful in 8m30s
MetagraphOptimization_CI / test (push) Successful in 22m2s
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Reviewed-on: #9
2024-05-08 19:26:18 +02:00
38e7ff3b90 Seed Randomness, Fix tests (#8)
All checks were successful
MetagraphOptimization_CI / docs (push) Successful in 7m34s
MetagraphOptimization_CI / test (push) Successful in 20m49s
Seeded randomness in all places, however, multithreaded randomness still exists.

Disabled some tests that are failing, will add issues and fix later. These are related to (likely) precision problems in the ABC model, which is not priority, and the Node Fusion, which will be fundamentally reworked anyways.

Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Reviewed-on: #8
2024-05-08 18:04:48 +02:00
7d7782f97f Add Workaround for Trie implementation for Julia version 1.10+ (#7)
Some checks failed
MetagraphOptimization_CI / docs (push) Successful in 8m32s
MetagraphOptimization_CI / test (push) Failing after 12m1s
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Reviewed-on: #7
2024-05-08 14:00:25 +02:00
87dbaf2c32 experiments (#1)
All checks were successful
MetagraphOptimization_CI / docs (push) Successful in 10m41s
MetagraphOptimization_CI / test (push) Successful in 30m40s
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Reviewed-on: #1
2024-05-08 12:03:27 +02:00
82ed774b7e Tape Machine (#30)
Adds a tape machine way of executing the code.
The tape machine is a series of FunctionCall objects, which can either be called one by one, or be used to generate expressions to make up a function.

Reviewed-on: Rubydragon/MetagraphOptimization.jl#30
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2024-01-03 16:38:32 +01:00
92e0eeaaef heterogeneity (#27)
Prepare things to work with heterogeneity, make things work on GPU

Reviewed-on: Rubydragon/MetagraphOptimization.jl#27
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-12-18 14:31:52 +01:00
c90346e948 Add QED Model (#25)
Reviewed-on: Rubydragon/MetagraphOptimization.jl#25
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-12-07 02:54:15 +01:00
938bf216e5 Improve actions workflow by removing prepare step (#23)
Reviewed-on: Rubydragon/MetagraphOptimization.jl#23
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-11-24 19:20:05 +01:00
04d5673b44 Use SafeTestsets for testing (#22)
Fixes issue #18

Reviewed-on: Rubydragon/MetagraphOptimization.jl#22
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-11-22 16:01:17 +01:00
b7560685d4 Optimizer interface and sample implementation (#19)
Reviewed-on: Rubydragon/MetagraphOptimization.jl#19
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-11-22 13:51:54 +01:00
16274919e4 Cost Estimation interface (#14)
See issue #13

Reviewed-on: Rubydragon/MetagraphOptimization.jl#14
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-11-17 01:31:31 +01:00
2709eeb3dc Fix the types, add some profiling examples (#15)
Reviewed-on: Rubydragon/MetagraphOptimization.jl#15
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-11-13 12:55:02 +01:00
5a30f57e1f Add scheduling, machine info, caching strategies and devices (#9)
Some checks failed
MetagraphOptimization_CI / prepare (push) Has been cancelled
MetagraphOptimization_CI / test (push) Has been cancelled
MetagraphOptimization_CI / docs (push) Has been cancelled
Reviewed-on: Rubydragon/MetagraphOptimization.jl#9
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-10-12 17:51:03 +02:00
Anton Reinhard
bd6c54c1ae Merge pull request 'Code Generation' (#8) from code-gen into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#8
2023-09-17 14:35:46 +02:00
62791ab422 Fix docs
Some checks failed
MetagraphOptimization_CI / prepare (push) Has been cancelled
MetagraphOptimization_CI / test (push) Has been cancelled
MetagraphOptimization_CI / docs (push) Has been cancelled
2023-09-17 12:40:11 +02:00
4c452dce98 Add execution test 2023-09-17 10:32:43 +02:00
Anton Reinhard
27c4b8ba34 Use real ABC-Model compute effort and data transfer numbers 2023-09-07 18:46:41 +02:00
Anton Reinhard
e59d24ebe5 Add code gen documentation 2023-09-07 18:23:36 +02:00
Anton Reinhard
d1666de432 Add accurate arithmetic for summation, fix order of input particles 2023-09-07 16:49:44 +02:00
0f78053ccf Fix topoligical ordering on the graph 2023-09-05 12:14:41 +02:00
Anton Reinhard
7a1a97dac8 Add basic execution function 2023-09-01 16:22:16 +02:00
Anton Reinhard
f1edce258a Start adding code generation 2023-08-31 18:24:48 +02:00
Anton Reinhard
32fcd069d7 Merge pull request 'Property Caching' (#7) from feature/property-tracking into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#7
2023-08-29 15:35:51 +02:00
e09ab7c77b Add tests 2023-08-29 13:09:33 +02:00
7387fa86b1 Add GraphProperties and property caching 2023-08-29 13:08:02 +02:00
065236be22 Add documentation to every function and automatic doc html building (#6)
Reviewed-on: Rubydragon/MetagraphOptimization.jl#6
Co-authored-by: Anton Reinhard <anton.reinhard@proton.me>
Co-committed-by: Anton Reinhard <anton.reinhard@proton.me>
2023-08-29 12:57:46 +02:00
Anton Reinhard
8014bbffcd Merge pull request 'More Validation' (#5) from test into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#5
2023-08-25 11:05:17 +02:00
ae1345d547 Add formatter
Some checks failed
Test / test (push) Has been cancelled
2023-08-25 10:48:22 +02:00
dbcd569967 Update Julia in CI and dependencies 2023-08-25 10:24:37 +02:00
0f5f475cb4 Shuffle files and functions around for more consistent naming and smaller files 2023-08-24 15:11:54 +02:00
1b4030d633 Add validity checks to tests 2023-08-24 14:44:21 +02:00
Anton Reinhard
383c92ec47 Merge pull request 'Performance Improvements' (#4) from performance into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#4
2023-08-24 11:33:06 +02:00
15fe8ed0f5 Add *.mem files to gitignore
Some checks failed
Test / test (push) Has been cancelled
2023-08-23 22:48:24 +02:00
c365233ea4 Rework node operations storage, remove make_edge from insert_edge calls 2023-08-23 19:28:45 +02:00
Anton Reinhard
a81aafbf20 Merge pull request 'Add node reduction tests' (#3) from test into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#3
2023-08-23 13:56:43 +02:00
e44ef77ba4 Move input text files 2023-08-23 13:38:02 +02:00
92f59110ed Add node reduction unit test and fix bugs 2023-08-23 12:51:28 +02:00
Anton Reinhard
569949d5c7 Merge pull request 'Performance Improvements and Multi-Threading' (#2) from performance into main
Reviewed-on: Rubydragon/MetagraphOptimization.jl#2
2023-08-23 10:47:33 +02:00
3454370a37 Multithreaded Node Reduction inserttion 2023-08-22 13:26:24 +02:00
45e35dd526 Add bench script 2023-08-22 10:29:59 +02:00
a7fb15c95b Multithreading for Node Reductions 2023-08-21 16:56:27 +02:00
2e96e6520e Some file reordering and parallelization work 2023-08-21 12:54:45 +02:00
895e4b2a12 Start multithreading 2023-08-21 10:29:00 +02:00
9cac6e76be Improve parsing performance and get_operations 2023-08-18 17:18:01 +02:00