profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/jonatanklosko/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.
Jonatan Kłosko jonatanklosko @dashbitco Poland https://jonatanklosko.com Open source developer. Working on Livebook at @dashbitco. Member of @thewca Software Team.

jonatanklosko/material-ui-confirm 146

Simple confirmation dialogs built on top of @material-ui/core and straightforward to use thanks to React Hooks

jonatanklosko/notebooks 26

A collection of Livebook notebooks

jonatanklosko/md-collection-pagination 6

Angular Material Design component for paginating a collection.

jonatanklosko/groupifier 4

Task and group management tool for WCA competition organizers.

jonatanklosko/alg-sets 3

Web app for storing and exploring cubing algorithms.

jonatanklosko/alg-drill 2

A tiny tool for practicing recognition of newly learnt cubing algorithms.

jonatanklosko/internationalize 2

Translating Rails apps made easy.

Pull request review commentelixir-nx/nx

feat: scatter-add

 defmodule EXLA.DefnExprTest do     end   end +  describe "scatter_add" do+    defn scatter_add(t, i, u) do+      Nx.scatter_add(t, i, u)+    end++    test "scatter_add works for multi-dim tensor" do+      target =+        Nx.broadcast(0, {2, 3, 4})++      indices = Nx.tensor([[[

Yeah, that's what I thought, but could definitely use another opinion :) @seanmor5, @josevalim

polvalente

comment created time in 13 hours

PullRequestReviewEvent

Pull request review commentelixir-nx/nx

feat: scatter-add

 defmodule Nx do     )   end +  @doc """+  Performs a scatter-add operation on the `target` tensor,+  adding the `updates` into the corresponding `indices` positions.++  This operation is the grad for gather-like operations such as+  `take/3` and `take_along_axis/3`.++  `indices` must be a tensor of indices along a given axis (see the options below).+  `argsort/2` produces suitable indices for this function.+  """+  def scatter_add(target, indices, updates, opts \\ []) do+    opts = keyword!(opts, axis: 1)++    # nx_take = fn %{shape: shape} = t, i ->+    #   shape_l = Tuple.to_list(shape)+    #   num_el = Enum.reduce(shape_l, &*/2)++    #   flat_dim =+    #     List.duplicate(1, tuple_size(shape)) |> List.replace_at(0, num_el) |> List.to_tuple()++    #   Nx.take_along_axis(t, i |> Nx.reshape(flat_dim) |> Nx.tile(List.replace_at(shape_l, 0, 1)),+    #     axis: 0+    #   )+    #   |> Nx.reshape(List.replace_at(shape_l, 0, shape_l) |> List.flatten() |> List.to_tuple())+    # end

Yeah, as far as I understand we need separate backend operations to distinguish on EXLA level, which in turn implies separate grads.

polvalente

comment created time in 14 hours

PullRequestReviewEvent
PullRequestReviewEvent

Pull request review commentelixir-nx/nx

feat: scatter-add

 defmodule EXLA.DefnExprTest do     end   end +  describe "scatter_add" do+    defn scatter_add(t, i, u) do+      Nx.scatter_add(t, i, u)+    end++    test "scatter_add works for multi-dim tensor" do+      target =+        Nx.broadcast(0, {2, 3, 4})++      indices = Nx.tensor([[[

Similarly to gather, scatter could have versions working with larger slices, thought whatever route we go I think our scatter and gather should do the same ^^

polvalente

comment created time in 14 hours

Pull request review commentelixir-nx/nx

feat: scatter-add

 defmodule EXLA.DefnExprTest do     end   end +  describe "scatter_add" do+    defn scatter_add(t, i, u) do+      Nx.scatter_add(t, i, u)+    end++    test "scatter_add works for multi-dim tensor" do+      target =+        Nx.broadcast(0, {2, 3, 4})++      indices = Nx.tensor([[[

I'd consider restricting the shape to be 2d, since logically any other shape isn't relevant.

polvalente

comment created time in 14 hours

PullRequestReviewEvent
PullRequestReviewEvent

Pull request review commentelixir-nx/nx

feat: scatter-add

 defmodule Nx do     )   end +  @doc """+  Performs a scatter-add operation on the `target` tensor,+  adding the `updates` into the corresponding `indices` positions.++  This operation is the grad for gather-like operations such as+  `take/3` and `take_along_axis/3`.++  `indices` must be a tensor of indices along a given axis (see the options below).+  `argsort/2` produces suitable indices for this function.+  """+  def scatter_add(target, indices, updates, opts \\ []) do+    opts = keyword!(opts, axis: 1)++    # nx_take = fn %{shape: shape} = t, i ->+    #   shape_l = Tuple.to_list(shape)+    #   num_el = Enum.reduce(shape_l, &*/2)++    #   flat_dim =+    #     List.duplicate(1, tuple_size(shape)) |> List.replace_at(0, num_el) |> List.to_tuple()++    #   Nx.take_along_axis(t, i |> Nx.reshape(flat_dim) |> Nx.tile(List.replace_at(shape_l, 0, 1)),+    #     axis: 0+    #   )+    #   |> Nx.reshape(List.replace_at(shape_l, 0, shape_l) |> List.flatten() |> List.to_tuple())+    # end

@polvalente in order to implement take* in terms of gather, we would need to generate indices tensor with all the individual indices though? If so, the generated tensor could be really large.

polvalente

comment created time in 14 hours

PullRequestReviewEvent

Pull request review commentlivebook-dev/livebook

Mention /dashboard route on bug reports

 ## Environment +Note you can also find versions at the /dashboard route of your Livebook.

Maybe use a comment so it doesn't accidentally end up in the actual description?

<!-- Note: you can also find versions at the /dashboard route of your Livebook. -->
josevalim

comment created time in 15 hours

PullRequestReviewEvent

push eventjonatanklosko/nx

Jonatan Kłosko

commit sha 649b4dba8f691bbff46d913b47539a19bc06be0c

Run formatter

view details

push time in 17 hours

issue commentlivebook-dev/livebook

Add link to file an issue with the project

Hey @PeteJodo! I agree with @josevalim, especially that Livebook is more of a dev tool, I believe for the users are generally aware where to report issues, and hopefully actual bugs are not that frequent :)

Btw, can we do this on GitHub issues? :D

@josevalim actually we it's possible by setting query parameters in the issues form URL.

From technical standpoint, we would likely need to keep a copy of the template in the Livebook source. Also, we could at most fill the versions (and with git master not necessarily a precise one), other points are either specific to the user or the actual issue. In the end, I don't think it saves much time :)

PeteJodo

comment created time in 17 hours

issue closedlivebook-dev/livebook

Markdown spitting out html if two $ are added in seemingly arbitrary spots

Environment

  • Elixir & Erlang/OTP versions (elixir --version): 1.12.2
  • Operating system: Pop OS
  • How have you started Livebook (mix phx.server, livebook CLI, Docker, etc): docker
  • Livebook version (use git show if running with mix): latest docker image as of date of this issue
  • Browsers that reproduce this bug (the more the merrier): Firefox, Chromium
  • Include what is logged in the browser console:
  • Include what is logged to the server console:

Current behavior

  1. Open a new livebook
  2. Add a markdown section
  3. Type out the following as if you were writing instructions for what to run in the terminal
To do thing, first run the following in your terminal:
```sh
$ echo "first command"
```
After that then do the following:
```sh
$ echo "second command"
```
  1. Note that the first code snippet area in the rendered markdown (the one that does echo "first command") displays a long string of html while the next code snippet (the second command) is entirely empty. The long string of html starts with <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML">

Expected behavior

The expected behavior is having the markdown render like it does in github for example...

=========== Expected rendering of markdown ===========

To do thing, first run the following in your terminal:

$ echo "first command"

After that then do the following:

$ echo "second command"

======================================================

Thanks and I'm really loving livebook as a dev companion!

closed time in 18 hours

PeteJodo

issue commentlivebook-dev/livebook

Markdown spitting out html if two $ are added in seemingly arbitrary spots

Hey @PeteJodo! I believe this is fixed on master, with Docker you can use the livebook/livebook:edge image (:latest points to the last released version, :edge points to master). Feel free to reopen if you still experience the issue :)

PeteJodo

comment created time in 18 hours

pull request commentelixir-nx/nx

Implement gather

@josevalim as for negative indices we discussed it briefly in https://github.com/elixir-nx/nx/pull/433#discussion_r681239629, the same applies here. So currently I made binary backend raise an error, wdyt?

jonatanklosko

comment created time in 18 hours

PR merged jonatanklosko/meow

Remove exla_precompiled from dependencies

EXLA now uses precompiled XLA binaries by default, so we no longer need the custom version.

+7 -14

0 comment

7 changed files

jonatanklosko

pr closed time in a day

push eventjonatanklosko/meow

Jonatan Kłosko

commit sha e55375da4e2cf150356e878d45811d3ee7e8216f

Remove exla_precompiled from dependencies (#18)

view details

push time in a day

delete branch jonatanklosko/meow

delete branch : jk-xla

delete time in a day

PR opened jonatanklosko/meow

Remove exla_precompiled from dependencies

EXLA now uses precompiled XLA binaries by default, so we no longer need the custom version.

+7 -14

0 comment

7 changed files

pr created time in a day

create barnchjonatanklosko/meow

branch : jk-xla

created branch time in a day

PR opened elixir-nx/nx

Include EXLA in the CI workflow

Having the precompiled XLA avilable we can run EXLA tests on the CI just fine. However, we need to resolve the failing tests first :) Here is an example build.

+22 -19

0 comment

3 changed files

pr created time in a day

push eventjonatanklosko/nx

Jonatan Kłosko

commit sha c2dbc1433e849e976ffc821c1db173dc93ee02eb

Include EXLA in the CI workflow

view details

Jonatan Kłosko

commit sha 327de52106e8e04523107b6083028de015222965

Fix compiler warnings

view details

Jonatan Kłosko

commit sha d00a2ab3394f4f54c3205b19705d6241f091e42a

Run formatter

view details

Jonatan Kłosko

commit sha 77ea81b20ffebad5515b779fa7d8de10dc955669

Run

view details

push time in a day

push eventjonatanklosko/nx

Jonatan Kłosko

commit sha c2dbc1433e849e976ffc821c1db173dc93ee02eb

Include EXLA in the CI workflow

view details

Jonatan Kłosko

commit sha 327de52106e8e04523107b6083028de015222965

Fix compiler warnings

view details

Jonatan Kłosko

commit sha d00a2ab3394f4f54c3205b19705d6241f091e42a

Run formatter

view details

push time in a day

create barnchjonatanklosko/nx

branch : jk-exla-ci-run

created branch time in a day

push eventjonatanklosko/nx

Jonatan Kłosko

commit sha ed049b3f77ec02ddf1248111f3306936d4e8cfc0

Include EXLA in the CI workflow

view details

Jonatan Kłosko

commit sha 045ece964163c9e9d4cbc55ff6e84091233fcc44

Fix compiler warnings

view details

Jonatan Kłosko

commit sha 089fa680f60a05d1ee4620e232fe6b28d7f9e4f8

Run formatter

view details

push time in a day

push eventjonatanklosko/nx

Jonatan Kłosko

commit sha 0b0c6122f7157662a9bcdf03206035ab3e6f0aa9

Fix compiler warnings

view details

Jonatan Kłosko

commit sha 616fc1ff05c864fb1cb6466b9d6a1b5bb87f4f4c

Run formatter

view details

Jonatan Kłosko

commit sha 614d901122268242a316b8376609742cbfbeb05e

TMP

view details

push time in a day

create barnchjonatanklosko/nx

branch : jk-exla-ci

created branch time in a day