GithubHelp home page GithubHelp logo

scorch's Introduction

Scorch

Introduction

The main goal of the Sista VM is to add adaptive optimisations such as speculative inlining in Cog’s JIT compiler using type information present in the inline caches. Such optimisations both improve Cog’s performance and allow developers to write easy-to-read code over fast-to-execute code without performance overhead (typically, #do: is the same performance as #to:do:).

Scorch is the adaptive optimizer written in Smalltalk, it is compatible with the VM from opensmalltalk-vm.

Status: Open alpha release

Link: https://clementbera.wordpress.com/2017/07/19/sista-open-alpha-release/

As all alpha releases, it is reserved for VM developers (the release is not relevant for non VM developers, and clearly no one should deploy any application on it yet). Last year we had a closed apha release with a couple people involved such as Tim Felgentreff who added support for the Sista VM builds in the Squeak speed center after tuning the optimisation settings.

Past activity

This repository has been moved from Smalltalk-hub to github March 13th 2018.

For all the activity in-between Jun 2016-March 2018, check http://smalltalkhub.com/#!/~ClementBera/Scorch

For all the activity in-between May 2013-Jun 2016, check http://smalltalkhub.com/#!/~mate/sista

I was not involved in the project before May 2013 so I have no idea where activity before May 2013 is.

Using the Sista runtime

Loading scripts:

wget -O- get.pharo.org/61+vm | bash
./pharo-ui Pharo.image
Metacello new
        githubUser: 'clementbera' project: 'Scorch' commitish: 'master' path: 'repository';
        baseline: 'Scorch';
        onWarningLog;
        load	

Notes:

Use a sista enabled VM

The most stable image version is currently Pharo 6.1

After loading the configuration in your image, workspaces will appear with explanation on what you can do (Similar to VMMaker workspaces)

Repository organization

  • repository includes Scorch's Smalltalk code

  • spec includes the specification of unsafe operations in JSON format with a class to ease parsing.

  • Master is release branch

  • Development is my branch

scorch's People

Contributors

clementbera avatar jecisc avatar

Stargazers

Pavel avatar Juan Escalada avatar Nicolas Cellier avatar Fabio Niephaus avatar  avatar Gabriel Omar Cotelli avatar  avatar  avatar

Watchers

James Cloos avatar Gabriel Omar Cotelli avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.