profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/cgyurgyik/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

cucapra/calyx 132

Intermediate Language (IL) for Hardware Accelerator Generators

cgyurgyik/fast-voxel-traversal-algorithm 23

A C++ implementation of the fast voxel traversal algorithm.

cgyurgyik/riscv-assembly 5

Implementation of common functions using RISC-V assembly.

cgyurgyik/STL-algorithm-examples 2

Simple examples of each STL algorithm.

cgyurgyik/eigenvectors-from-eigenvalues 1

Function to compute the normed eigenvectors from the eigenvalues of a Hermitian matrix.

cgyurgyik/ARC-computer-vision 0

A few demonstrations using OpenCV.

cgyurgyik/bril 0

an educational compiler intermediate representation

cgyurgyik/caml-pox 0

Epidemic simulation game.

cgyurgyik/cgyurgyik.github.io 0

Github Pages template for academic personal websites, forked from mmistakes/minimal-mistakes

cgyurgyik/circt 0

Circuit IR Compilers and Tools

PR opened cucapra/calyx

Record stage duration for debug output. Comp: Fud

Adds a simple timer to record how long each stage took to complete its run.

For example:

# fud e examples/dahlia/dot-product.fuse --to dat -s verilog.data examples/dahlia/dot-product.fuse.data -vv
stage         elapsed time (s)
  dahlia          0.781
  futil           0.073
  verilog         5.102
+13 -0

0 comment

1 changed file

pr created time in 4 hours

create barnchcucapra/calyx

branch : time

created branch time in 4 hours

push eventcucapra/calyx

Chris Gyurgyik

commit sha b38639a86b50065eee9b3e86ea5593f0b33a0438

[fud] Add space in InvalidNumericType error message. (#741)

view details

push time in a day

delete branch cucapra/calyx

delete branch : nt

delete time in a day

PR merged cucapra/calyx

Reviewers
[fud] Add space in InvalidNumericType error message. Comp: Fud

cc: @crystalhu26 as well, since I can't add you as a reviewer. It was caught in the following error message:

[fud] ERROR: Invalid Numeric Type: The value: 5361170404089217488 will overflow when trying to represent63 bits with width: 13
+1 -1

1 comment

1 changed file

cgyurgyik

pr closed time in a day

PR opened cucapra/calyx

Reviewers
[fud] Add space in InvalidNumericType error message. Comp: Fud

cc: @crystalhu26 as well, since I can't add you as a reviewer. It was caught in the following error message:

[fud] ERROR: Invalid Numeric Type: The value: 5361170404089217488 will overflow when trying to represent63 bits with width: 13
+1 -1

0 comment

1 changed file

pr created time in a day

create barnchcucapra/calyx

branch : nt

created branch time in a day

issue commentcucapra/calyx

Tracking overflow / underflow in mathematical operations.

@cgyurgyik any specific use cases to currently motivate this? For example, something like the problems with the exp generator (#505)?

Yep, that's one case. I also believe it will be necessary for testing larger models using fixed point such as lenet, or even some of the TVM operations (e.g. convolution, pooling).

cgyurgyik

comment created time in 2 days

pull request commentcucapra/calyx

GH pages based deployment for playground

Awesome!!

rachitnigam

comment created time in 3 days

push eventllvm/circt

cgyurgyik

commit sha 85285a2ee82d98f3c86ba476e859746b17394c79

[Calyx] [NFC] A -> An.

view details

push time in 3 days

push eventllvm/circt

cgyurgyik

commit sha 4a70e0d3c5b810f1a954b3ab01a7375fbb929aaf

[Calyx] [NFC] Add examples for unary library operations as well.

view details

push time in 3 days

issue commentcucapra/calyx

Formatting for interpreter output

One could imagine a post-processing step that takes the raw binary data and formats it as numbers according to the types given in such a file.

I think that's what their Option 2 is claiming, or at least how I interpreted it. However I foresee issues where this may still be incomplete for reading, say, register values where there may be no type information.

EclecticGriffin

comment created time in 4 days

push eventllvm/circt

Chris Gyurgyik

commit sha 03c654c135e53f74e7ec956c6c9c962bc9374b0f

[Calyx] [NFC] Remove extra `the` in description.

view details

push time in 4 days

push eventllvm/circt

Chris Gyurgyik

commit sha 51da22ae6d03ff4ed86b7cf25e868231e0c7cd38

Use the GroupInterface to establish port driving. (#2018) Instead of having helper methods with a GroupInterface parameter, we instead add InterfaceMethods to the GroupInterface for logic relating to port driving / reading in groups.

view details

push time in 4 days

PR merged llvm/circt

[Calyx] [NFC] Use the GroupInterface to establish port driving. Calyx

Closes #2009.

+221 -169

0 comment

2 changed files

cgyurgyik

pr closed time in 4 days

issue closedllvm/circt

[Calyx] Port driving within a group should be methods of the GroupInterface.

The functions listed below should be methods of the GroupInterface to avoid having to have an extra parameter for the group.

https://github.com/llvm/circt/blob/62abecffaf0278e36858238657d0eec1788464fe/lib/Dialect/Calyx/CalyxOps.cpp#L149-L213

closed time in 4 days

cgyurgyik

PR opened llvm/circt

[Calyx] [NFC] Use the GroupInterface to establish port driving. Calyx

Closes #2009.

+221 -169

0 comment

2 changed files

pr created time in 4 days

create barnchllvm/circt

branch : ginterface

created branch time in 4 days

issue commentcucapra/calyx

Formatting for interpreter output

Stupid idea no. 3 for simplicity: always print all 4 values, i.e. {unsigned, signed} {bitnum, fixed point}?

Also seems connected to Overlay type system idea.

EclecticGriffin

comment created time in 4 days

issue openedllvm/circt

[Calyx] Port driving within a group should be methods of the GroupOpInterface.

The functions listed below should be methods of the GroupOpInterface to avoid having to have an extra parameter for the group.

https://github.com/llvm/circt/blob/62abecffaf0278e36858238657d0eec1788464fe/lib/Dialect/Calyx/CalyxOps.cpp#L149-L213

created time in 5 days

push eventllvm/circt

Chris Gyurgyik

commit sha 62abecffaf0278e36858238657d0eec1788464fe

[Calyx] [NFC] Consistently do not use DOxygen syntax.

view details

push time in 5 days

issue closedllvm/circt

[Calyx] Add builders for AssignOp and GroupDoneOp that don't require a guard.

The default builders work great for the generated parser and printer, but while generating these ops programatically, I found myself passing in null Value()s when I didn't need to set a guard. I have the builders locally, just opening this issue to track that I plan to add these in case anyone else was looking for that.

closed time in 5 days

mikeurbach

issue commentllvm/circt

[Calyx] Add builders for AssignOp and GroupDoneOp that don't require a guard.

Closed with https://github.com/llvm/circt/pull/1872.

mikeurbach

comment created time in 5 days

issue openedcucapra/calyx

Tracking overflow / underflow in mathematical operations.

I think this would be great for debugging / program correctness purposes.

I'm unsure how easily this could be added to the interpreter. @EclecticGriffin, perhaps you have an opinion here?

Another option I foresee is tackling this at the primitive / component level. For each component / primitive add an {over, under}flow flag. This also requires adding the additional logic to check for this case. The benefit here is allowing the user to handle this case directly as well.

created time in 5 days

issue commentcucapra/calyx

Pass to order assignments in dataflow order

Ah Ok thanks the extra context makes much more sense

rachitnigam

comment created time in 6 days

issue commentcucapra/calyx

Pass to order assignments in dataflow order

By this do you mean ordering within, i.e. intra-group?

Also, can I ask why?

rachitnigam

comment created time in 7 days

issue closedcucapra/calyx

Deprecate `std_fp_dwidth_*` primitives

The standard library contains several fixed-point primitives that operate on inputs of different bitwidths. We should instead just use the std_slice and std_pad operators to get inputs of the same bitwidth to the standard std_fp_* operators.

The only frontend to use the operators is Dahlia. Once Dahlia stops using them, we can remove them.

closed time in 8 days

rachitnigam

push eventcucapra/calyx

Chris Gyurgyik

commit sha f3b9cf6ec847812ad893a31a4f26d0eea1c89479

Deprecate and remove different-width for fixed point in Calyx. (#729)

view details

push time in 8 days

delete branch cucapra/calyx

delete branch : remove-tests

delete time in 8 days

PR merged cucapra/calyx

Reviewers
Deprecate and remove different-width for fixed point in Calyx. Comp: Library

Closes #727.

#728 is a part of this as well.

https://github.com/cucapra/dahlia/pull/386 for Dahlia side.

+0 -236

1 comment

7 changed files

cgyurgyik

pr closed time in 8 days