iqoqo多处理python包
iqoqomp的Python项目详细描述
iqoqomp
iqoqo多处理python包
iqoqomp是一个使用iqoqo服务分发计算作业的包。 它引入了一个类似于多处理python包的api。
有关iqoq本身的更多信息,请查看IQOQO homepage
概述
类iqoqomp.process(名称,目标,参数=)
实例化process类将创建一个新作业,其中一个任务处于“等待状态”,并将其提交给iqoqo计算服务
名称
工作的名字。 名称是仅用于标识目的的字符串。它不必是唯一的。
目标
目标是要由正在运行的作业调用的可调用对象。
参数
args是目标调用的参数元组。默认情况下,不向目标传递任何参数。
开始()
开始在其中一台计算机上运行作业。
每个进程对象最多只能调用一次。
加入(超时=无)
join阻塞调用线程,直到作业完成。作业成功完成后,将结果文件下载到新目录中,并在工作目录中指定作业的名称。
当前,超时必须始终为“无”。
一个过程最多应该一次加入。 调用join时可能已经完成了一项工作。但是,只有在调用join时才会下载结果。
类iqoqomp.pool(进程=无)
通过调用pool类的map()方法,实例化pool类将创建一个对象,稍后用于运行在许多计算机中执行一个或多个任务的作业。 pool类不接受任何参数,并且对用于运行作业任务的计算机数没有控制权。 机器的数量是单独确定的。
映射(func,iterable,chunksize=none)
- pool.map将同一函数应用于多组参数。
- 它创建一个作业,将每组参数作为单独的任务在“池”中的一台计算机上运行。
- 它会阻塞,直到结果就绪(即所有作业的任务都完成)。
- 结果将按原始顺序返回(与参数的顺序相对应)。
- 当作业在工作目录中名为函数名的目录下完成时,将自动下载与作业相关的文件(除了用于运行任务的脚本、输入、配置文件)。
- 应该为函数的参数提供iterable。
星图(func,iterable,chunksize=none)
- starmap与pool.map类似,但它可以将同一函数应用于多个参数集。
- 应该为函数的参数提供iterable。iterable的元素也应该是作为参数解包的iterable。 因此,[(1,2),(3,4)]的一个iterable导致了[func(1,2),func(3,4)]。
安装:
- 安装iqoqo cli:
curl https://s3.us-east-2.amazonaws.com/iqoqo.cli/install.sh | sh
在iqoqo仪表板中注册:
安装iqoqomp包:
pip install iqoqomp
或
pip3 install iqoqomp
用法:
- 您继续编写python脚本,就像使用多处理包一样,但不是从多处理导入流程和池模块,而是从iqoqomp导入它们。
- 使用iqoqo帐户的用户名和密码设置环境变量(请参见下面的示例)。
示例:
使用process类的一个简单示例:
importosfromiqoqompimportProcessos.environ['IQOQO_LOGIN_USER']='username@mail.com'os.environ['IQOQO_LOGIN_PASSWORD']='password'deffunc(name):print('Hello',name)p=Process(name='MyFirstJobExample',target=func,args=('Bob',))p.start()p.join()
输出:
使用pool类的基本示例:
importosfromiqoqompimportPoolos.environ['IQOQO_LOGIN_USER']='username@mail.com'os.environ['IQOQO_LOGIN_PASSWORD']='password'defpow3(x):print(x**3)return(x**3)p=Pool()results=p.map(pow3,range(10))print(results)
输出:
联系我们:
请随时与我们在iqoqo联系,了解更多信息