Skip to content

Commit 45d2d56

Browse files
committed
Add next phase of design notes
1 parent 2502602 commit 45d2d56

File tree

3 files changed

+27
-1
lines changed

3 files changed

+27
-1
lines changed

Design-F.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ But this is terrible, because the URL is ugly.
100100

101101
Overall: the OO API seems pointless and useless.
102102

103-
### Stateless Executation
103+
### Stateless Execution
104104
A meta-problem might be that we needs something in between `cog-execute!`
105105
and `cog-set-value!`. The problem with `cog-execute!` is it takes just
106106
one argument: the Atom to execute. Thus, a Link must be created to wrap

Design-G.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
Design Notes G
2+
==============
3+
September 2025
4+
5+
Notes about the mechanics of running AST's on GPU's.
6+
7+
The base implementation of the GPU interfaces is now sufficiently
8+
advanced that the next steps open up: the ability to take a given
9+
Atomese AST and run it on a GPU. That is, to create a GPU-cenetric
10+
library of arithmetic functions, and then take a specific abstract
11+
syntax tree (AST) written as e.g. `(AccumLink (TimesLink A B))` and
12+
run it on the GPU. But what is the API to this, and what is the
13+
mechanics of doing this?
14+
15+
One possibility is to have PlusGPULink and TimesGPULink, and then have
16+
RuleLinks to transpose the AST from its "abstract" form to these
17+
concrete Atoms. This is problematic because RuleLinks remain difficult
18+
to work with and apply. They seem like a great idea but are tough.
19+
There are also little details that threaten coherency: stuff that might
20+
need to run locally before getting pushed off to the GPU, and the rules
21+
for these could be very arcane and detailed and prone to bugs.
22+
23+
Another possibility is to have an `(ExecOnGPULink AST)`, similar to
24+
`(PureExec AST)`
25+

Design.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ actual design.
1919
unimplemented. Next step should be `PlusLink` and `TimesLink` running
2020
on the GPU.
2121
* [Design-F](./Design-F.md) ponders RNN/LTSM embeddings of the AtomSpace.
22+
* [Design-G](./Design-G.md) ponders mechanics of running AST's on GPU's.
2223

2324
Structuralism Overview
2425
----------------------

0 commit comments

Comments
 (0)