Skip to content
This repository was archived by the owner on Nov 17, 2023. It is now read-only.
This repository was archived by the owner on Nov 17, 2023. It is now read-only.

Interop bug - clojure - executor/forward - param coercion issue #12627

Closed
@paroda

Description

@paroda

Description

ClassCastException when using executor/forward in cojure-mxnet with 3 args

Environment info (Required)

----------Python Info----------
('Version      :', '2.7.13')
('Compiler     :', 'GCC 6.3.0 20170516')
('Build        :', ('default', 'Nov 24 2017 17:33:09'))
('Arch         :', ('64bit', 'ELF'))
------------Pip Info-----------
No corresponding pip install for current python.
----------MXNet Info-----------
No MXNet installed.
----------System Info----------
('Platform     :', 'Linux-4.9.0-8-amd64-x86_64-with-debian-buster-sid')
('system       :', 'Linux')
('node         :', 'htx9a')
('release      :', '4.9.0-8-amd64')
('version      :', '#1 SMP Debian 4.9.110-3+deb9u4 (2018-08-21)')
----------Hardware Info----------
('machine      :', 'x86_64')
('processor    :', '')
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             4
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 94
Model name:            Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
Stepping:              3
CPU MHz:               2711.247
BogoMIPS:              5424.15
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb invpcid_single kaiser fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp

Package used (Python/R/Scala/Julia): Clojure
I am using Clojure 1.9.0
Java version: openjdk 1.8.0_181

Build info (Required if built from source)

Compiler: gcc
MXNet commit hash: db295ef

Build config:
make -j4 USE_CUDA=0 USE_BLAS=openblas

Minimum reproducible example

(ns mynn.tut
  (:require [org.apache.clojure-mxnet.ndarray :as nda]
            [org.apache.clojure-mxnet.executor :as exe]
            [org.apache.clojure-mxnet.symbol :as sym]
            [t6.from-scala.core :as $]))

(def a (sym/variable "a"))
(def b (sym/variable "b"))
(def c (sym/+ a b))

(def ex (sym/bind c {"a" (nda/ones [2 3])
                     "b" (nda/ones [2 3])}))

(exe/forward ex false {"a" (nda/ones [2 3])})
;; => ClassCastException Cannot cast scala.collection.immutable.Map$Map1 to scala.collection.Seq

(exe/forward ex false ($/immutable-list ($/tuple "a" (nda/ones [2 3]))))
;; => nil (no error)

What have you tried to solve it?

Need to fix the coercion of 3rd arg of executor/forward to generate Seq instead of Map

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions