小编ma3*_*oun的帖子

如何嵌套numba jitclass

我试图理解@jitclass装饰器如何与嵌套类一起工作.我写了两个虚拟类:fifi和toto fifi有一个toto属性.这两个类都有@jitclass装饰器,但编译失败.这是代码:

fifi.py

from numba import jitclass, float64
from toto import toto

spec = [('a',float64),('b',float64),('c',toto)]

@jitclass(spec)
class fifi(object):
  def __init__(self, combis):
    self.a = combis
    self.b = 2
    self.c = toto(combis)

  def mySqrt(self,x):
    s = x
    for i in xrange(self.a):
      s = (s + x/s) / 2.0
    return s
Run Code Online (Sandbox Code Playgroud)

toto.py:

from numba import jitclass,int32

spec = [('n',int32)]

@jitclass(spec)
class toto(object):
  def __init__(self,n):
    self.n = 42 + n

  def work(self,y):
    return y + self.n
Run Code Online (Sandbox Code Playgroud)

启动代码的脚本:

from datetime import datetime
from fifi import …
Run Code Online (Sandbox Code Playgroud)

python jit numba

9
推荐指数
1
解决办法
3189
查看次数

在Spark集群上为Jupyter Notebook指定python文件

我正在Spark集群(带有毛线)上运行一本jupyter笔记本。我正在使用“ findspark”包来设置笔记本,它工作得很好(我通过SSH隧道连接到集群主机)。当我编写“自包含”笔记本时,它可以正常运行,例如,以下代码可以正常运行:

import findspark
findspark.init()

import pyspark

sc = pyspark.SparkContext(appName='myApp')
a = sc.range(1000,numSlices=10)
a.take(10)
sc.stop()
Run Code Online (Sandbox Code Playgroud)

Spark工作完全分配给了工人。但是,当我想使用自己编写的python包时,worker上的文件丢失了

当我不使用Jupyter-notebook时,当我使用spark-submit --master yarn --py-files myPackageSrcFiles.zip时,我的Spark作业可以正常工作,例如以下代码可以正确运行:

main.py

import pyspark
from myPackage import myFunc

sc = pyspark.SparkContext(appName='myApp')
a = sc.range(1000,numSlices=10)
b = a.map(lambda x: myFunc(x)) 
b.take(10)
sc.stop()
Run Code Online (Sandbox Code Playgroud)

然后

spark-submit --master yarn --py-files myPackageSrcFiles.zip main.py
Run Code Online (Sandbox Code Playgroud)

问题是:如何从jupyter笔记本运行main.py?我尝试使用pyfiles关键字在SparkContext中指定.zip包,但出现错误...

python apache-spark pyspark jupyter-notebook

5
推荐指数
1
解决办法
948
查看次数

标签 统计

python ×2

apache-spark ×1

jit ×1

jupyter-notebook ×1

numba ×1

pyspark ×1