SlideShare a Scribd company logo
1 of 10
Download to read offline
PROCESS WARP
distributed processing system
Yuji Ito
facebook : https://www.facebook.com/ito.yuuji
github : https://github.com/llamerada-jp
I talk about PROCESS WARP that is a distributed processing system, I'm developing.
PROCESS WARP : A new infrastructure
for distributed processing system. All
machines are equal. It doesn’t require a
special machine as a server.
Typical system : Formed by client/
server. It requires a server, if the server is
down, service will stop.
※ Icons by Crystal Project (LGPL).
Aim
Feature
• Applications run in virtual
space, that is made up by a
group of nodes.
• Makes it possible to use any
amount of computer resources
and control nodes by a single
process.
• Makes it possible to warp a
process to another node with
keep alive.
Advantage
Increase total processing power
according to number of joining
nodes.
• Decrease cost to maintain
service without relation to
number of nodes.
• Service provider can choose a
good topology for system
having a lot of nodes.
join
Advantage
It breaks the border between a
standalone application and a
cloud application.
• User can use stand alone
application similar to cloud
application on PROCESS
WARP.
• User can use application
offline, after a migration
process.
(Under active development)
Because a process image can migrate, the
user can use the application offline.
Share the process space among the
connected computers and freely pass the
running application between machines.
Architecture
Host : native environment like UNIX, or web-browser
CPU : Interpret LLVM-IR
instructions without using
native stack
Memory : Store memory
image partially per node
other host
VM
Process Virtual Machine : Dump and synchronise (or pass)
memory image; Control PCB (Process Control Block); Call API
Use native APIs
Synchronise memory image, Control PCB
I'm developing a special virtual machine to realise previous slide's system.
LLVM is a compiler infrastructure that is used in many environments.
Actual status
• You can run virtual machine on FreeBSD, Linux, OSX, and Web-
browser.
• And run sample C/C++ program on virtual machine.
• Multiple threads can be distributed across several machines.
• Virtual machines have minimal APIs like “printf”.
• I published source code with MIT license and anyone can try it on
web-browser.
• http://www.processwarp.org/
• https://github.com/processwarp
Demo
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
char* ret = "a";
static void *thread_func(void *vptr_args) {
int i;
for (i = 0; i < 20000; i++) {
printf(" b [%d]n", i);
}
return (void*)ret;
}
int main(void) {
int i;
pthread_t thread;
void* retval;
if (pthread_create
(&thread, NULL, thread_func, NULL)
!= 0) {
return EXIT_FAILURE;
}
for (i = 0; i < 10000; i++) {
printf("a [%d]n", i);
}
if (pthread_join(thread, &retval) != 0) {
return EXIT_FAILURE;
}
printf("ret %016llx %16llxn",
(unsigned long long)ret,
(unsigned long long)retval);
return EXIT_SUCCESS;
}
This program is a simple multi thread
application. This program makes two
threads and increments a counter on each
thread.
Next milestones
• Remove server (currently needs control server) and implement
peer to peer transfer.
• Make test, document, and more APIs to run existing applications.
• Develop I/O functions including storage and socket layers.
Thank you!

More Related Content

What's hot

HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVM
HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVMHOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVM
HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVMOwais Zahid
 
Introduction to telepresence
Introduction to telepresenceIntroduction to telepresence
Introduction to telepresenceKyohei Mizumoto
 
Develop custom SAPUI5 libraries using SAP Web IDE
Develop custom SAPUI5 libraries using SAP Web IDEDevelop custom SAPUI5 libraries using SAP Web IDE
Develop custom SAPUI5 libraries using SAP Web IDEThomas Nelissen
 
AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!Zander Mackie
 
Multiplatform C++ on the Web with Emscripten
Multiplatform C++ on the Web with EmscriptenMultiplatform C++ on the Web with Emscripten
Multiplatform C++ on the Web with EmscriptenChad Austin
 
Kubernetes: training micro-dragons for a serious battle
Kubernetes: training micro-dragons for a serious battleKubernetes: training micro-dragons for a serious battle
Kubernetes: training micro-dragons for a serious battleAmir Moghimi
 
.NET Core in the Real World
.NET Core in the Real World.NET Core in the Real World
.NET Core in the Real WorldNate Barbettini
 
Minko - Build WebGL applications with C++ and asm.js
Minko - Build WebGL applications with C++ and asm.jsMinko - Build WebGL applications with C++ and asm.js
Minko - Build WebGL applications with C++ and asm.jsMinko3D
 
Beyond Xen: A look into the Xen Cloud Platform
Beyond Xen: A look into the Xen Cloud PlatformBeyond Xen: A look into the Xen Cloud Platform
Beyond Xen: A look into the Xen Cloud PlatformThe Linux Foundation
 
[Szjug] Docker. Does it matter for java developer?
[Szjug] Docker. Does it matter for java developer?[Szjug] Docker. Does it matter for java developer?
[Szjug] Docker. Does it matter for java developer?Izzet Mustafaiev
 
Deployment of the Machine Learning at the production level
Deployment of the Machine Learning at the production levelDeployment of the Machine Learning at the production level
Deployment of the Machine Learning at the production levelIllarion Khlestov
 
Dockerfile for rust project
Dockerfile for rust projectDockerfile for rust project
Dockerfile for rust projectHien Nguyen
 
Object Studio 8.2: News Update
Object Studio 8.2: News UpdateObject Studio 8.2: News Update
Object Studio 8.2: News UpdateESUG
 
Writing your own browser reload functionality
Writing your own browser reload functionalityWriting your own browser reload functionality
Writing your own browser reload functionalityAnže Žnidaršič
 
Microservices on Kubernetes - The simple way
Microservices on Kubernetes - The simple wayMicroservices on Kubernetes - The simple way
Microservices on Kubernetes - The simple waySuraj Deshmukh
 
Simulation in R and Python
Simulation in R and PythonSimulation in R and Python
Simulation in R and PythonShunichi Otsuka
 
Application Deployment Architecture
Application Deployment ArchitectureApplication Deployment Architecture
Application Deployment ArchitectureSaurav Basu
 
CF News April Feb-Apr 2017
CF News April Feb-Apr 2017CF News April Feb-Apr 2017
CF News April Feb-Apr 2017Hristo Iliev
 

What's hot (20)

HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVM
HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVMHOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVM
HOW TO CREATE AWESOME POLYGLOT APPLICATIONS USING GRAALVM
 
Introduction to telepresence
Introduction to telepresenceIntroduction to telepresence
Introduction to telepresence
 
Develop custom SAPUI5 libraries using SAP Web IDE
Develop custom SAPUI5 libraries using SAP Web IDEDevelop custom SAPUI5 libraries using SAP Web IDE
Develop custom SAPUI5 libraries using SAP Web IDE
 
AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!
 
Kompose
KomposeKompose
Kompose
 
Multiplatform C++ on the Web with Emscripten
Multiplatform C++ on the Web with EmscriptenMultiplatform C++ on the Web with Emscripten
Multiplatform C++ on the Web with Emscripten
 
Kubernetes: training micro-dragons for a serious battle
Kubernetes: training micro-dragons for a serious battleKubernetes: training micro-dragons for a serious battle
Kubernetes: training micro-dragons for a serious battle
 
.NET Core in the Real World
.NET Core in the Real World.NET Core in the Real World
.NET Core in the Real World
 
Minko - Build WebGL applications with C++ and asm.js
Minko - Build WebGL applications with C++ and asm.jsMinko - Build WebGL applications with C++ and asm.js
Minko - Build WebGL applications with C++ and asm.js
 
Beyond Xen: A look into the Xen Cloud Platform
Beyond Xen: A look into the Xen Cloud PlatformBeyond Xen: A look into the Xen Cloud Platform
Beyond Xen: A look into the Xen Cloud Platform
 
[Szjug] Docker. Does it matter for java developer?
[Szjug] Docker. Does it matter for java developer?[Szjug] Docker. Does it matter for java developer?
[Szjug] Docker. Does it matter for java developer?
 
Deployment of the Machine Learning at the production level
Deployment of the Machine Learning at the production levelDeployment of the Machine Learning at the production level
Deployment of the Machine Learning at the production level
 
Dockerfile for rust project
Dockerfile for rust projectDockerfile for rust project
Dockerfile for rust project
 
Object Studio 8.2: News Update
Object Studio 8.2: News UpdateObject Studio 8.2: News Update
Object Studio 8.2: News Update
 
Ci for android OS
Ci for android OSCi for android OS
Ci for android OS
 
Writing your own browser reload functionality
Writing your own browser reload functionalityWriting your own browser reload functionality
Writing your own browser reload functionality
 
Microservices on Kubernetes - The simple way
Microservices on Kubernetes - The simple wayMicroservices on Kubernetes - The simple way
Microservices on Kubernetes - The simple way
 
Simulation in R and Python
Simulation in R and PythonSimulation in R and Python
Simulation in R and Python
 
Application Deployment Architecture
Application Deployment ArchitectureApplication Deployment Architecture
Application Deployment Architecture
 
CF News April Feb-Apr 2017
CF News April Feb-Apr 2017CF News April Feb-Apr 2017
CF News April Feb-Apr 2017
 

Viewers also liked

Presentación1
Presentación1Presentación1
Presentación1narujulito
 
Comunicación sincrónica y asincrónica
Comunicación sincrónica y asincrónicaComunicación sincrónica y asincrónica
Comunicación sincrónica y asincrónicaelluaser
 
NEPSE weekly status Vol-1 issue-3
NEPSE weekly status Vol-1 issue-3NEPSE weekly status Vol-1 issue-3
NEPSE weekly status Vol-1 issue-3Sharechart Shrestha
 
JPNIC Update
JPNIC UpdateJPNIC Update
JPNIC UpdateAPNIC
 
vsource_brochure_spread (upload in linkedin)
vsource_brochure_spread (upload in linkedin)vsource_brochure_spread (upload in linkedin)
vsource_brochure_spread (upload in linkedin)Anh Nguyen
 
sharechart Technical Newsletter vol-2 issue-35
sharechart Technical Newsletter vol-2 issue-35sharechart Technical Newsletter vol-2 issue-35
sharechart Technical Newsletter vol-2 issue-35Sharechart Shrestha
 
sharechart Technical Newsletter vol-2 issue-36
sharechart Technical Newsletter vol-2 issue-36sharechart Technical Newsletter vol-2 issue-36
sharechart Technical Newsletter vol-2 issue-36Sharechart Shrestha
 
sharechart Technical Analysis from Student Raju Munikar Presentation on NHPC...
sharechart Technical Analysis from Student Raju Munikar  Presentation on NHPC...sharechart Technical Analysis from Student Raju Munikar  Presentation on NHPC...
sharechart Technical Analysis from Student Raju Munikar Presentation on NHPC...Sharechart Shrestha
 
Presentation 1 ward
Presentation 1 ward Presentation 1 ward
Presentation 1 ward abileenward
 
DNA & Heredity-I
DNA & Heredity-IDNA & Heredity-I
DNA & Heredity-IB.H. Hashmi
 
тракийски съкровища Ivka
тракийски съкровища Ivkaтракийски съкровища Ivka
тракийски съкровища IvkaDani Parvanova
 
ο δικός μας αρχιμήδης
ο δικός μας αρχιμήδηςο δικός μας αρχιμήδης
ο δικός μας αρχιμήδηςvasilikiarvan
 
Copywriting, Conversion, and Your Customer's Comfort Zone
Copywriting, Conversion, and Your Customer's Comfort ZoneCopywriting, Conversion, and Your Customer's Comfort Zone
Copywriting, Conversion, and Your Customer's Comfort ZoneKissmetrics on SlideShare
 

Viewers also liked (17)

Proyecto Maestría
Proyecto MaestríaProyecto Maestría
Proyecto Maestría
 
Las redes sociales
Las redes socialesLas redes sociales
Las redes sociales
 
Presentación1
Presentación1Presentación1
Presentación1
 
Paki
PakiPaki
Paki
 
GT-P20-270615
GT-P20-270615GT-P20-270615
GT-P20-270615
 
Comunicación sincrónica y asincrónica
Comunicación sincrónica y asincrónicaComunicación sincrónica y asincrónica
Comunicación sincrónica y asincrónica
 
NEPSE weekly status Vol-1 issue-3
NEPSE weekly status Vol-1 issue-3NEPSE weekly status Vol-1 issue-3
NEPSE weekly status Vol-1 issue-3
 
JPNIC Update
JPNIC UpdateJPNIC Update
JPNIC Update
 
vsource_brochure_spread (upload in linkedin)
vsource_brochure_spread (upload in linkedin)vsource_brochure_spread (upload in linkedin)
vsource_brochure_spread (upload in linkedin)
 
sharechart Technical Newsletter vol-2 issue-35
sharechart Technical Newsletter vol-2 issue-35sharechart Technical Newsletter vol-2 issue-35
sharechart Technical Newsletter vol-2 issue-35
 
sharechart Technical Newsletter vol-2 issue-36
sharechart Technical Newsletter vol-2 issue-36sharechart Technical Newsletter vol-2 issue-36
sharechart Technical Newsletter vol-2 issue-36
 
sharechart Technical Analysis from Student Raju Munikar Presentation on NHPC...
sharechart Technical Analysis from Student Raju Munikar  Presentation on NHPC...sharechart Technical Analysis from Student Raju Munikar  Presentation on NHPC...
sharechart Technical Analysis from Student Raju Munikar Presentation on NHPC...
 
Presentation 1 ward
Presentation 1 ward Presentation 1 ward
Presentation 1 ward
 
DNA & Heredity-I
DNA & Heredity-IDNA & Heredity-I
DNA & Heredity-I
 
тракийски съкровища Ivka
тракийски съкровища Ivkaтракийски съкровища Ivka
тракийски съкровища Ivka
 
ο δικός μας αρχιμήδης
ο δικός μας αρχιμήδηςο δικός μας αρχιμήδης
ο δικός μας αρχιμήδης
 
Copywriting, Conversion, and Your Customer's Comfort Zone
Copywriting, Conversion, and Your Customer's Comfort ZoneCopywriting, Conversion, and Your Customer's Comfort Zone
Copywriting, Conversion, and Your Customer's Comfort Zone
 

Similar to PROCESS WARP

Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansPeter Clapham
 
A Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy SystemA Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy Systemadrian_nye
 
The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)Casey Bisson
 
Habitat Overview
Habitat OverviewHabitat Overview
Habitat OverviewMandi Walls
 
Making clouds: turning opennebula into a product
Making clouds: turning opennebula into a productMaking clouds: turning opennebula into a product
Making clouds: turning opennebula into a productCarlo Daffara
 
Making Clouds: Turning OpenNebula into a Product
Making Clouds: Turning OpenNebula into a ProductMaking Clouds: Turning OpenNebula into a Product
Making Clouds: Turning OpenNebula into a ProductNETWAYS
 
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...OpenNebula Project
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.jsorkaplan
 
Large-scaled Deploy Over 100 Servers in 3 Minutes
Large-scaled Deploy Over 100 Servers in 3 MinutesLarge-scaled Deploy Over 100 Servers in 3 Minutes
Large-scaled Deploy Over 100 Servers in 3 MinutesHiroshi SHIBATA
 
Hogy jussunk ki lezárt hálózatokból?
Hogy jussunk ki lezárt hálózatokból?Hogy jussunk ki lezárt hálózatokból?
Hogy jussunk ki lezárt hálózatokból?hackersuli
 
OS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of MLOS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of MLNordic APIs
 
Cannibalising The Google App Engine
Cannibalising The  Google  App  EngineCannibalising The  Google  App  Engine
Cannibalising The Google App Enginecatherinewall
 
Linux containers and docker
Linux containers and dockerLinux containers and docker
Linux containers and dockerFabio Fumarola
 
Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014André Rømcke
 
Rmll Virtualization As Is Tool 20090707 V1.0
Rmll Virtualization As Is Tool 20090707 V1.0Rmll Virtualization As Is Tool 20090707 V1.0
Rmll Virtualization As Is Tool 20090707 V1.0guest72e8c1
 

Similar to PROCESS WARP (20)

Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
 
Flexible compute
Flexible computeFlexible compute
Flexible compute
 
A Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy SystemA Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy System
 
The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)
 
Virtual Machine
Virtual MachineVirtual Machine
Virtual Machine
 
Habitat Overview
Habitat OverviewHabitat Overview
Habitat Overview
 
Making clouds: turning opennebula into a product
Making clouds: turning opennebula into a productMaking clouds: turning opennebula into a product
Making clouds: turning opennebula into a product
 
Making Clouds: Turning OpenNebula into a Product
Making Clouds: Turning OpenNebula into a ProductMaking Clouds: Turning OpenNebula into a Product
Making Clouds: Turning OpenNebula into a Product
 
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...
OpenNebulaConf 2013 - Making Clouds: Turning OpenNebula into a Product by Car...
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
 
Large-scaled Deploy Over 100 Servers in 3 Minutes
Large-scaled Deploy Over 100 Servers in 3 MinutesLarge-scaled Deploy Over 100 Servers in 3 Minutes
Large-scaled Deploy Over 100 Servers in 3 Minutes
 
Hogy jussunk ki lezárt hálózatokból?
Hogy jussunk ki lezárt hálózatokból?Hogy jussunk ki lezárt hálózatokból?
Hogy jussunk ki lezárt hálózatokból?
 
OS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of MLOS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of ML
 
Cannibalising The Google App Engine
Cannibalising The  Google  App  EngineCannibalising The  Google  App  Engine
Cannibalising The Google App Engine
 
Linux containers and docker
Linux containers and dockerLinux containers and docker
Linux containers and docker
 
Handout2o
Handout2oHandout2o
Handout2o
 
Automation in Cloud
Automation in CloudAutomation in Cloud
Automation in Cloud
 
Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014
 
Rmll Virtualization As Is Tool 20090707 V1.0
Rmll Virtualization As Is Tool 20090707 V1.0Rmll Virtualization As Is Tool 20090707 V1.0
Rmll Virtualization As Is Tool 20090707 V1.0
 

More from 祐司 伊藤

Container Storage Interface のすべて
Container Storage Interface のすべてContainer Storage Interface のすべて
Container Storage Interface のすべて祐司 伊藤
 
C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発祐司 伊藤
 
C++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用するC++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用する祐司 伊藤
 
シンプル Processing !
シンプル Processing !シンプル Processing !
シンプル Processing !祐司 伊藤
 
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作るPROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る祐司 伊藤
 
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系祐司 伊藤
 
PIAXで作る P2Pネットワーク
PIAXで作る P2PネットワークPIAXで作る P2Pネットワーク
PIAXで作る P2Pネットワーク祐司 伊藤
 
新しい分散実行の仕組み PROCESS WARPについて
新しい分散実行の仕組み PROCESS WARPについて新しい分散実行の仕組み PROCESS WARPについて
新しい分散実行の仕組み PROCESS WARPについて祐司 伊藤
 
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略祐司 伊藤
 

More from 祐司 伊藤 (11)

Container Storage Interface のすべて
Container Storage Interface のすべてContainer Storage Interface のすべて
Container Storage Interface のすべて
 
C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発
 
C++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用するC++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用する
 
詳説WebAssembly
詳説WebAssembly詳説WebAssembly
詳説WebAssembly
 
シンプル Processing !
シンプル Processing !シンプル Processing !
シンプル Processing !
 
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作るPROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
 
PROCESS WARP
PROCESS WARPPROCESS WARP
PROCESS WARP
 
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系
 
PIAXで作る P2Pネットワーク
PIAXで作る P2PネットワークPIAXで作る P2Pネットワーク
PIAXで作る P2Pネットワーク
 
新しい分散実行の仕組み PROCESS WARPについて
新しい分散実行の仕組み PROCESS WARPについて新しい分散実行の仕組み PROCESS WARPについて
新しい分散実行の仕組み PROCESS WARPについて
 
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
 

Recently uploaded

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 

Recently uploaded (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 

PROCESS WARP

  • 1. PROCESS WARP distributed processing system Yuji Ito facebook : https://www.facebook.com/ito.yuuji github : https://github.com/llamerada-jp I talk about PROCESS WARP that is a distributed processing system, I'm developing.
  • 2. PROCESS WARP : A new infrastructure for distributed processing system. All machines are equal. It doesn’t require a special machine as a server. Typical system : Formed by client/ server. It requires a server, if the server is down, service will stop. ※ Icons by Crystal Project (LGPL). Aim
  • 3. Feature • Applications run in virtual space, that is made up by a group of nodes. • Makes it possible to use any amount of computer resources and control nodes by a single process. • Makes it possible to warp a process to another node with keep alive.
  • 4. Advantage Increase total processing power according to number of joining nodes. • Decrease cost to maintain service without relation to number of nodes. • Service provider can choose a good topology for system having a lot of nodes. join
  • 5. Advantage It breaks the border between a standalone application and a cloud application. • User can use stand alone application similar to cloud application on PROCESS WARP. • User can use application offline, after a migration process. (Under active development) Because a process image can migrate, the user can use the application offline. Share the process space among the connected computers and freely pass the running application between machines.
  • 6. Architecture Host : native environment like UNIX, or web-browser CPU : Interpret LLVM-IR instructions without using native stack Memory : Store memory image partially per node other host VM Process Virtual Machine : Dump and synchronise (or pass) memory image; Control PCB (Process Control Block); Call API Use native APIs Synchronise memory image, Control PCB I'm developing a special virtual machine to realise previous slide's system. LLVM is a compiler infrastructure that is used in many environments.
  • 7. Actual status • You can run virtual machine on FreeBSD, Linux, OSX, and Web- browser. • And run sample C/C++ program on virtual machine. • Multiple threads can be distributed across several machines. • Virtual machines have minimal APIs like “printf”. • I published source code with MIT license and anyone can try it on web-browser. • http://www.processwarp.org/ • https://github.com/processwarp
  • 8. Demo #include <stdio.h> #include <stdlib.h> #include <pthread.h> char* ret = "a"; static void *thread_func(void *vptr_args) { int i; for (i = 0; i < 20000; i++) { printf(" b [%d]n", i); } return (void*)ret; } int main(void) { int i; pthread_t thread; void* retval; if (pthread_create (&thread, NULL, thread_func, NULL) != 0) { return EXIT_FAILURE; } for (i = 0; i < 10000; i++) { printf("a [%d]n", i); } if (pthread_join(thread, &retval) != 0) { return EXIT_FAILURE; } printf("ret %016llx %16llxn", (unsigned long long)ret, (unsigned long long)retval); return EXIT_SUCCESS; } This program is a simple multi thread application. This program makes two threads and increments a counter on each thread.
  • 9. Next milestones • Remove server (currently needs control server) and implement peer to peer transfer. • Make test, document, and more APIs to run existing applications. • Develop I/O functions including storage and socket layers.