iExec (RLC) Blockchain-based Fully Distributed Cloud Computing



  • Vision

    Building the Distributed Cloud that will support Distributed Applications (DApps)

    iEx.ec aims at providing distributed applications running on the blockchain a scalable, secure and easy access to the services, the data-sets and the computing resources they need. This technology relies on the Ethereum smart contracts and allows building a virtual Cloud infrastructure that provides high-performance computing services on demand.

    iEx.ec leverages a set of research technologies that have been developed at the INRIA and CNRS research institutes in the field of Desktop Grid computing. The idea of Desktop Grid (aka Volunteer Computing [BOINC]) is to collect the computer resources underutilized on the Internet to execute very large parallel applications at the fraction of the cost of a traditional supercomputer. Since the early 2000’s we have pushed this idea to its extreme limit. We produced numerous software and algorithms that introduced breakthrough innovations in the area of large scale data processing, data management, parallel computing, security and dependability, QoS, interoperability with eScience infrastructures and many more.

    iEx.ec relies on XtremWeb-HEP, a mature, solid, and open-source Desktop Grid software which implements all the needed features : fault-tolerance, multi-applications, multi-users, hybrid public/private infrastructure, deployment of virtual images, data management, security and accountability, and many more.

    Thanks to iEx.ec, we can now organize decentralized infrastructures and market places, where everyone will be able to rent its computing resources (CPU, storage, GPU, …), where the innovative SMEs which design Big Data and HPC applications will be able to sell them online immediately with the needed resources to run them, and where highly valued data-sets will be rentable with a fine-grain business model. Moreover, because the blockchain provides distributed consensus and resiliency while being fully distributed, we think that it’s going to change drastically the way we design distributed systems and applications.

    iEx.ec is just the beginning of a new era!

    Technology

    Let's build our own Blockchain-based Cloud Platform !

    • A Technology for innovation

    Usage of Big Data and High Performance Computing applications and the infrastructures to run them is a necessity for the design of innovative products and services.

    • A Technology for everyone

    HPC is too complex and too expensive for innovative SMEs and individuals. iEx.ec provides on-demand, secure and scalable access to an unlimited set of computing resources (CPU, storage, GPU) .

    • A mature technology

    Our technology is based on XtremWeb-HEP, a software for parallel and distributed computing used in production in the public domain for 10 years (signal processing, image, high energy physics, aeronautics, finance, etc.)

    • Affordable Technology

    iEx.ec relies on the Ethereum blockchain to organize a global P2P market, where everyone can rent computing resources and applications. This lowers the cost of IT and provides better energy efficiency.

    Technical overview

    iEx.ec will support the emerging class of blockchain-based distributed applications and enable cost-effective high-performance computing by building a distributed Cloud infrastructure.
    A Blockchain-based Distributed Cloud will allow on-demand, secure and low-cost access to the most competitive computing infrastructures. DApps will rely on iEx.ec to automatically search, find, provision, use, release all the computing resources they need: applications, data, and servers

    Thus, we envision a new eco-system of companies offering storage, computer farms, data providers, web hosting, SaaS applications, and all making business to others through iEx.ec. The Distributed Cloud will open new markets for aggressive usage of existing computing infrastructure. To lower the amount of energy required to run the servers and the air conditioning systems, servers can be pushed out of the data center. By easing the access to such machines, a Distributed Cloud would allow to drastically decrease the environmental footprint of data centers, while bringing the data closer to their producers and consumers.

    iEx.ec technology overview (Product)

    iEx.ec is a combination of Desktop Grid Computing and Blockchain technologies.

    Background: Desktop Grid Computing

    Desktop Grid (i.e. Volunteer Computing) uses the underutilized computing resources to execute very large parallel applications at the fraction of the cost of a traditional supercomputer. Some examples include well-known applications like SETI@Home, Folding@home, and distributed.net.
    Desktop Grid Computing includes several features that makes it a good platform for a fully Distributed Cloud:
    ● resilience: if some nodes fail, the computation continues on other working nodes.
    ● efficiency: applications get excellent performances even if computing nodes are highly heterogeneous.
    ● ease of deployment: allows to use any nodes without specific configuration, even those located on the edge of the Internet.
    This makes Desktop Grid the perfect solution for assembling hybrid infrastructures, whose computing resources can range from classical high performance computing clusters, Cloud infrastructure providers and home personal computers.


    iEx.ec relies on Desktop Grid open-source software that we have been developed at the CNRS and INRIA research institutes to assemble loosely distributed computing resources for HPC and Big Data.

    XtremWeb-HEP (link, GitHub) is a mature, solid, and open-source Desktop Grid software that allows to use any kind of computing resources for executing compute-intensive or data-intensive applications.
    During the last decade, we have also developed a large portfolio of technologies for distributed computing: MPICH-V for parallel computing, BitDew for large scale data management, SpeQuloS for providing quality of service to application execution, the first implementation of MapReduce for Internet computing, and more. Many of our research results have been published in top scientific conferences and journals (>80 papers published) and we successfully raised more than 1M€ of public funding including several EU research grants.
    We have obtained a unique expertise in making the Desktop Grid technology running and available to various scientific communities as well as startups and innovative industries.
    ● From 2007 to 2012, with several European partners, we established the European Desktop Grid Infrastructure (EDGI). This considerable effort was supported by the European Union, which funded 4 FP7 projects (EDGeS, EDGI, DEGISCO, IDGF). The goal was to provide researchers and academics with additional computing power coming from Desktop Grid infrastructures. EDGI has been a huge success. We connected a dozen of sites (Hungary, France, UK, Spain, Netherlands …) to the main European e-infrastructures, such as the one supporting the Large Hadron Collider in Switzerland. We gained a considerable experience in connecting Clouds and HPC systems to Desktop Grids as we succeeded in transparently executing millions of jobs on more than 200.000 nodes.
    ● By showing the applicability of the technology in many fields of science: high energy physics, biomedical research, mathematics, financial algorithms, material research, 3-D rendering, and more.
    ● Of course, we had also many collaborations with the industry (Total, Airbus, IFP …). And more recently, we received a funding from the French National Research Industry in order to provide innovative SMEs access to low-cost, on-demand and secure HPC services. We conducted many interviews with SMEs from the biomedical and eHealth sector to understand their needs and requirements and designed MVPs and PoCs. Somehow, the emergence of blockchain was the key enabler that triggered our motivation that eventually led to the iEx.ec project.
    The knowledge and experience gained by exploring, inventing and establishing Internet-wide distributed computing infrastructures is a crucial part in creating a distributed Cloud for blockchain-based distributed applications, while the foundation of already developed technology guarantees a fast time to market and timely project completion.

    Roadmap:

    http://iex.ec/wp-content/uploads/2017/01/iEx.Ec-Roadmap_v2_150x150px.png

    To achieve our goals we developed the following implementation roadmap according to several funding levels.
    Go-to-market strategy
    We will develop 5 versions of the product (v1-v5) that correspond to 3 steps in terms of Go-to-Market strategy.
    1. Community Edition (v1) Features to create an open-source software that allows to build the distributed Cloud.
    2. Enterprise Edition (v2, v3, v4) Features to establish a full Market Network profitable for a wide range of businesses.
    3. Research Edition (v5) Features to make serious advances that can address wider topics than Cloud computing (IoT, Fog/ Edge computing …).

    With the minimum funding (2,000 BTC), iEx.ec will deliver an initial market network that allows to monetize applications and servers. With a maximum funding (10,000 BTC), iEx.ec will gradually develop the market network including data providers and HPC applications, then establish recurrent sources of revenue to iEx.ec.

    Team:




    WhitePaper:

    Translation:





    iExec (RLC) Updated Exchange List:


    Bittrex RLC/BTC

    Liqui RLC/BTC

    Liqui RLC/ETH

    Liqui RLC/USDT

    Gatecoin RLC/BTC

    EtherDelta RLC/ETH

    Bittrex RLC/ETH


    Links:


    Website: 

    Blog:

    News:

    Facebook:

    Twitter:

    Linkedin:

    Youtube:

    Reddit:

    E-Mail:

    Coin market capital:

    Github:



  • iEx.ec Team Interview with Mircea Moca

    After Oleg’s interview, we keep following the introduction of iEx.ec team members,
    by doing a special interview of Mircea Moca, business developer and
    Fintech Expert at iEx.ec and we’re thanking him for his time to produce
    this article.

    How did come to you the passion of technology, computing and cryptocurrency ?

    For me, an important thing related to technology, is that if I have an idea, it always helps me to bring it to reality. Obviously, there must be a correlation between the ambitions of the idea and the available technology at that time. And so is cryptocurrency now. What fascinates me to this topic, is a huge potential for a wide range of applications in many activities. From the way people can now raise resources for creating useful projects, to an exploding variety in which people can create and exchange value among them.

    How did you integrate the iExec project ?

    I constantly worked with Gilles Fedak and Haiwu He since 2010 on different projects, namely on topics of distributed computing, HPC. Since the beginning of our collaboration, we were complimentary and we achieved sinergy quite directly. On the iExec project, I contribute from its beginning.

    Can you tell us about eFAST project ?

    In one of my work visits in Lyon (France) in 2015, we evaluated different ways of building a collaborative platform for financial analysis. We had almost anything we needed, except the “glue” that would allow participants to exchange value in such a platform. In 2016, the Ethereum blockchain technology looked feasible for providing us this glue. Leading this initiative is one of my main tasks and this platform is planned to rely on the iExec market network.

    A last advice or tips to give us ?

    I recommend anyone to discover the potential of this emerging technology. A few months ago, before the ICO, some key ideas of this project were perceived with skepticism. Now, those features start to be understood as needs. Believe in your innovative ideas even when reticents are around, because this can inspire you even more!

    To get to know more Mircea Moca, please check and follow his medium account : https://medium.com/@mircea.moc...



  • iExec (RLC) API now Open Source (minimalistic version)

    We’re open sourcing the initial version of the iExec application interface for Ethereum Dapps developpers. These are solidity contracts that allow developers to submit off-chain task execution. We gave two examples of applications that can be built with the API :

    You are invited to start using this API. But proceed with caution, since it is still work in progress. The API may evolve drastically in the future, and you may probably have to modify your application.

    Summary of smart contract methods :

    • UID register(UID uid)
    • UID submit(String appName, String commandLineParameter)
    • void setParam (UID uid, String paramName, String paramValue)
    • void setPending (UID uid)
    • String getParam (UID uid, String paramName)
    • String getStatus (UID uid)
    • String submitAndWait(String appName, String commandLineParameter, String pattern)
    • String waitResult (UID uid, String commandLineParameter, String pattern)
    • void remove(UID uid)

    https://github.com/iExecBlockchainComputing/ApiSolidity

    Next sections detail each method.

    Register

    This registers a new work for the provided application. The job status is set to UNAVAILABLE so that it is not eligible to scheduling. This lets a chance to set different parameters. To make the work eligible to scheduling, setPending() must be called.

    UID register (String appName)

    • appName: the name of the application
    • returns the new work UID
    • Exception thrown if application is not found, or submission failed

    Submit

    This submits a new work for the provided application. The job status is set to PENDING so that it is schedulable. This is useful to submit a work with no param but the command line one, eventually, in a single call.

    UID submit (String appName, String commandLineParameter)

    • appName: the name of the application
    • commandLineParameter: command line parameter
    • returns the work UID
    • Exception thrown if application is not found, or submission failed

    SetParam

    This sets a parameter for the work.

    void setParam (UID uid, String paramName, String paramValue)

    • uid: work UID
    • paramName : name of the parameter to set
    • paramValue: parameter value to set
    • Exception is thrown if work is not found; if work status is not UNAVAILABLE; if parameter name is not valid; if parameter is read only (e.g. status, return code etc.)

    SetPending

    This makes the work schedulable. This must be called when using register().

    void setPending (UID uid)

    • uid: work UID
    • Exception is thrown if work is not found

    GetParam

    This retrieves a parameter from work.

    String getParam (UID uid, String paramName)

    • uid: work UID
    • paramName : name of the parameter to retrieve
    • returns the parameter value
    • Exception is thrown if work is not found, or if parameter name is not valid

    GetStatus

    This retrieves the work status.

    • String getStatus (UID uid)
    • uid: work UID
    • returns the work status. Possible status: PENDING, RUNNING, COMPLETED, ERROR, UNAVAILABLE
    • Exception is thrown if work is not found

    GetResultPath

    This retrieves the path of the result stored on local FS.

    • Path getResultPath (UID uid)
    • uid: work UID
    • returns the path of the result
    • Exception is thrown if work is not found; if work status is on ERROR (see status() )

    GetStdout

    This retrieves the content of the work stdout.

    • String getStdout (UID uid)
    • uid: work UID
    • returns the content of the work stdout
    • Exception is thrown if work is not found; if work status is ERROR (see status() )

    Remove

    This deletes work. This is unrecoverable.

    • void remove (UID uid)
    • uid: work UID

    SubmitAndWait

    This submits a new work and wait for its completion.

    String submitAndWait(appName, cmdLineParam, pattern)

    • appName: the name of the application
    • commandLineParameter: command line parameter
    • pattern: the pattern to be retrieved in the work stdout
    • returns the value of the pattern found in stdout
    • Exception thrown if application is not found, if submission failed, or if pattern is not found in stdout

    WaitResult

    This waits for the work to be completed and searches the provided pattern in the work result.

    String waitResult(UID uid, String pattern)

    • uid: work UID
    • pattern: the pattern to be retrieved in the work stdout
    • returns the value of the found pattern
    • Exception is thrown work is not found, if submission failed, if work status is ERROR (see status() ), or if pattern not found in stdout

    Workflows

    This section introduces typical workflows.

    Asynchronized

    This is the simplest case where work is submitted without any parameter but the command line, eventually. User does not want to wait for result and may come later to retrieve its results asynchronously.

    This is done calling:

    1. submit(appName, commandLineParameters, pattern)

    Synchronized

    This is the synchronized case where the user waits its results. This is how the PoC used to work.

    This is done calling:

    1. submitAndWait(appName, commandLineParameters, pattern)

    Asynchronized with parameters

    This case permits to set some work parameters. User does not want to wait for result and may come later to retrieve its results asynchronously.

    This is done calling :

    1. register(appName)
    2. for each parameter : setParam(uid, paramName, paramValue)
    3. setPending(uid)

    Synchronized with parameters

    This is the synchronized case permitting to set some parameters. Here the user waits its results.

    This is done calling:

    1. register(appName)
    2. for each parameter : setParam(uid, paramName, paramValue)
    3. setPending(uid)
    4. wait(uid, pattern)

    Conclusion

    In the coming weeks, we’ll release a simple tutorial, so that developers can start glancing at it and prototype their applications. You are invited to join us on our slack.



  • iExec joins the Enterprise Ethereum Alliance

    Press Release: iExec, the distributed cloud platform for the future internet is joining the Enterprise Ethereum Alliance today.

    July 11, 2017, Lyon France — The distributed cloud computing platform, iExec is joining the Enterprise Ethereum Alliance.

    The Enterprise Ethereum Alliance (EEA) seeks to augment Ethereum, enabling it to serve as an enterprise-grade technology, with research and development focused on privacy, confidentiality, scalability, and security. EEA will also investigate hybrid architectures that span both permissioned and public Ethereum networks.

    Ethereum is a blockchain-based, general purpose decentralized application platform, enabling smart contract functionality. This technology facilitates more efficient and secure transactions without centralized intermediation. Notably, the Ethereum blockchain technology will improve banking trade settlement latency, increase transparency in supply chains, and create peer-to-peer markets without intermediaries.

    iExec stands for “I Execute”. It aims at starting off as a fully distributed Blockchain-based cloud platform. Headquartered in Lyon, France, iExec is a spin-off company from INRIA, the French National Institute for Research in Computer Science. iExec aims to create a decentralized cloud and set up a marketplace for computing resources. It is designed for distributed Blockchain-based applications (DApps) with plans to evolve into a market network for decentralized computing products and services. The iExec system works by tethering computers together to create one giant network of computing resources. The Ethereum blockchain and smart contracts, act as a management system for the iExec network. It allows users to monetize their participation, automating payment transactions for the give and take of services. Unlike existing cloud providers, business on the iExec cloud is an open network allowing any companies to start their decentralize Cloud businesses.

    The iExec market network will be designed for various developers and enterprises of the distributed computing ecosystem. It will enable them to do business with each other to better monetize their products and services.

    CEO and co-founder Gilles explains the benefits for both iExec and the Enterprise Ethereum Alliance:

    “The simple truth is that centralized cloud services are falling behind current demand for computing resources. The iExec team knows this through our work at the leading edge of distributed and cloud computing. With Ethereum we see how a new paradigm of cloud computing is not just possible but absolutely essential, to meet the current needs of cloud SaaS, PaaS and IaaS markets, and to meet the needs of the next wave of innovation such as High Performance Computing, Artificial Intelligence, Internet of Things, Blockchain Computing and other forms of distributed business. iExec is proud to join the EEA to establish collectively the next generation IT infrastructure that will power Ethereum Dapps and beyond.”

    Website: http://iex.ec

    White paper: http://iex.ec/whitepaper

    Newsletter: goo.gl/cYltLJ

    Slack: http://slack.iex.ec

    Media Contact

    Contact Name: Gilles Fedak

    Contact Email: team@iex.ec

    Contact Location: Lyon, France



Looks like your connection to Cryptocentral was lost, please wait while we try to reconnect.