Monday, October 31, 2016

[Links of the day] 31/10/2016 : AWS open guide, uncertainty in deep learning, Hacking Google interview

  • Amazon Web Services Open Guide : This is THE practical guide for anybody that use AWS. Really well constructed and easy to use guide for the majority of AWS services out there. 
  • Uncertainty in Deep Learning : Thesis looking into the probabilistic aspect of Bayesian network and how not everything is black and white in deep learning land. It seems that we need to  see an emergence of probabilistic programmation + deep learning hybrid in order to handle the new world of uncertainty that is opening up with the progress of AI research. [PhD Thesis]
  • Google Interview University : program to help you beat the google technical interview process. While this is excellent as a refresh course in basic computer science I would also recommend MIT course : hacking a google interview. When interview by google i almost got a carbon copy of the question in the MIT course.. Sadly the google interview process is, lets say, "abysmal" for senior people. They want you to go through this marathon of interview without providing you an idea of what you are applying or other informations.. 

Friday, October 28, 2016

[Links of the day] 28/10/2016 : 3D chip stacking Wireless interconnect, Golem reverse MVC framework, Data Cleaning with R

  • ThruChip : The trend is to stack chips to save space and increase bandwidth. Most solution use Thru-Silican Vias (TSV) solution. Instead of using TSV, ThruChip company propose to use wireless interconnect to link the different chips and claims that they can achieve terabytes/s of bandwidth. [video] [slides]
  • Golem : Golem turns the MVC app inside out by making the client the intermediary between the application servers and the database.
  • Data cleaning with R : data cleaning often take more time than the analysis itself. This paper describe how to do it fast and efficiently with R.

Wednesday, October 26, 2016

[Links of the day] 26/10/2016 : PCOMMIT drop , Awesome Go , MIT #AI classes

  • Intel Drop PCOMMIT : Intel decided to simplify its persistent memory specific instruction set. The logic behind this change is that Asynchronous DRAM Refresh (ADR) is now a requirement for persistent memory support. As a result there is no need for PCOMMIT anymore because of the guarantee of the Write Pending Queues flush on power loss. 
  • Awesome Go : all in the title
  • MIT Artificial Intelligence : video of MIT class on Artificial intelligence

Monday, October 24, 2016

[Links of the day] 24/10/2016 : HPC scratchpad memory architecture, Flexible Package manager

  • Spack : flexible package manager designed to support multiple versions, configurations, platforms, and compilers. Cool feature : its non destructive, which means you can have multiple version co-existing in the same system. [Github]
  • Runnemede : energy-optimized research architecture using scratchpad ( software managed ) rather than HW cache. They achieve almost a 4x energy improvement vs standard design. [slides]
  • Efficient HPC Data Motion via Scratchpad Memory : Earlier paper demonstrating the efficiency of scratchpad rather than cache for Data motion in HPC systems.

Image result for scratchpad

Friday, October 21, 2016

[Links of the day] 21/10/2016 : Manager & Career Mgmt podcasts, Memory Enhancement, Computer Scientist Handbook

  • Manager Tools & Career Tools : podcast about management and career . 
  • How to Think Like a Computer Scientist : interactive handbook , its a little bit more about learning python than actually being a computer scientist. But a good intro to programming. 
  • Multiplicity of memory enhancement : human memory is complex, and with the accelerate advance of technology to support (and supplant)  our  retention capability. New ethical and societal consequence emerges. The authors looks at the different memory systems and how technology evolution affect them. 


Wednesday, October 19, 2016

[Links of the day] 19/10/2016 : #AI hard problems, Dark Silicon & Reliability , Transport Layer Dev Kit

  • Applied AI hard problems : current and future AI hard problem, the interesting bit is the "emergent" behavior aspect that computer scientist are trying to achieve. Where AI is not tailored for a specific problem by adapt to the environment it encounter. 
  • Dark silicon & Hardware Reliability : the authors look at the impact of the dark silicon approach ( when not all component are turned on when the system is up) and how to leverage the "dark" ratio to maximise lifespan of hardware. [slides]
  • TLDK : project lead by Intel within the fd.io framework. It is trying to adresse the lack of high level ( as in layer 4 ) packet processing capabilities. The project aim at delivering UDP/TCP etc.. packet processing on top of vector packet processing of FD.io (which can works on top of DPDK). By doing so Intel will be able to finally have a comprehensive framework which will enable DPDK based solution to flourish beyond the pure networking stack (NFV) solution.

Monday, October 17, 2016

[Links of the day] 17/10/2016 : MIT Tardis 2.0 Cache, TCP/IP FPGA stack , Knowledge Defined Networking

  • Tardis 2.0 : MIT people are back with optimized and extended version of their novel cache system. 
  • FPGA TCP/IP stack :  TCP/IP stack that can be embedded on FPGA along applications, this allow seamless flow of data without CPU interaction or reliance on other devices. You could do some neat in line processing of data flow using this. It support 10 Gbps and thousands of concurrent connections. [github]
  • Knowledge-Defined Networking : merging network analytics and software defined network by using machine learning. The objective is to enable automated network control.  To some extend we should replace the software is eating the world mantra with Machine learning is eating software one.  And closer than you think at least for SDN as there is an effort in Open daylight by Cisco and al. to push machine learning in the SDN framework.


Friday, October 14, 2016

[Links of the day] 14/10/2016 : Docker Infrakit , erasure Code for big-data and ARM research summit

  • InfraKit : docker answer to public cloud lock in. It allow devs to easily deploy their systems on various cloud infrastructure without code change. 
  • Erasure Coding for Big-data Systems : Phd Thesis of Rashmi Korlakai Vinayak on erasure code for very large data systems. The author analyse the requirement and provide potential solution allowing resource efficient distributaire storage codes . The authors looks at the various trade-off that can be used to guarantee durability while limiting ressource usage. 
  • ARM Research Summit 2016 : live blog of the keynotes, a lot of the research issue are similar to x86 one. Which can be worry some as ARM needs to be able to differentiate itself from Intel especially in the server market.

Wednesday, October 12, 2016

[Links of the day] 10/12/2016 : Full stack fest 16, Product Dev handbook and Stealing Machine Learning Models

  • Full Stack Fest 2016 : Playlist of the video of Full Stack fest 2016 conference
  • Product Aikido : handbook for an organisation’s Product Development Group.
  • Stealing Machine Learning Models : the authors of the papers propose a technique that analyse response of system using Machine learning via their API in order to extract the model used. And as a result allow the attacker to determine the best response for manipulating the system.


Tuesday, October 11, 2016

Notes on SNIA Storage Developer Conference 2016

This year SNIA Storage Developer Conference, chosen bits : 
  • MarFS : scalable near-POSIX file system using object storage. What is really impressive is that MarFS is part of a 5 tiers storage system of the trinity project. Yes FIVE tiers, RAM -> BurstBuffer -> Lustre -> MarFS-> Tape. MarFs seats above Tape for long term archival and aim at providing storage persistence that span year(s) of usage. In comparison Lustre just above aim at keeping the data for weeks only. What bother me is the logic behind this approach as most Supercomputer system have a 5-6 year lifespan. This implies that the project usage will span multiple generation of systems. [Github]
  • Hyperconverged Cache : It seems that Intel start to realize what we discovered years ago in the Hecatonchire project. Once you start to have near Ram performance, dis-aggregating and pooling your ressource becomes the natural next step for efficiency. And this is what they aim to achieve with a distributed storage cache system that would aggregate their 3dxpoint system across a cluster in order to deliver fast and coherent cache layer.  However without RDMA this approach seems a little bit pointless. The only things that seems to save them is that the cloud storage backend ( Ceph ) has a big enough latency gap they can exploit. 
  • Erasure Code : Very good overview of modern erasure code and their trade-offs. As always no code are equal but not all use case are the same. 

Persistent Memory :  As storage shift away from HDD to Pmem , the number of talk around persistent memory exploded this year. The main focus seems to shift from pure NVM consumption to remote access model. 
  • NVMe over fabric : two talk on the recent progress of NVMe over fabric. Nothing really new there, just that it seems that it will be the standard in remote storage access in the near future. [Mellanox] [Linux NVMf]
  • RDMA :  It seems that Intel and other are aiming for direct Persistent memory access using RDMA, bypassing the NVMe stack. The idea is to eliminate the latency from the NVMe stack. However this require some change in the RDMA stack in order to guarantee persistence of data. 
    • IOPMEM  : interesting work where the author propose to bypass CPU interaction between PCIe devices. Basically enabling DMA between NVM and other devices. It then allows RDMA NIC to directly talk to the NVM device on the same PCI switch. However it doesn't really explain what persistence guarantee are associated with the different operations.
    • RDMA verbs extension : basically Mellanox propose to add a RDMA flush verbs that would mimic the CPU flush command . This operation would guarantee consistency and persistence of remote data. 
    • PMoF : address the really difficult aspect of guaranteeing persistence and consistency of accessing persistent memory over fabric. Basically this talk describe all the nitty gritty detail to avoid losing/corrupting data during access over over fabric. This is what the RDMA flush verb will need to address but for the moment require a lot of manual operation. 
Last but not least we can see reference here and there to 3dXpoint from Intel however it seems that the company tuned down its marketing machine. Probably fearing some backlash because of the  continuous claw-back on claimed performance front. 



Monday, October 10, 2016

[Links of the day] 10/10/2016 : k8s Stateful container App platform, Modern Bank Backend, Fast websocket & tcp server

  • Deepstream.io : fast, secure and scalable websocket & tcp server for mobile, web & iot
  • SuperGiant : Application platform specializing in stateful container orchestration, based on Kubernetes
  • Building a Modern Bank Backend : Nothing much on the real detail, but it can be summarized: We took "classic" banking features and used a new stack to deliver it. The HN discussion is also worth checkking out. What is interesting is the discussion on Industrial vs open source software when it come to audit and security as well as reactivity. However what the authors of the discussion is that it often boil down to the blame game and emergency patch by industrial are NOT always thoroughly tested / audited / secured but you benefit from the insurance / SLA in case something goes wrong. [HN discussion]

Friday, October 07, 2016

[Links of the day] 07/10/2016 : Product Launch Checklist, Hashiconf 16, Startup Text Rpg

  • Product Launch Checklist : What is important in this check list, beyond the excellent break down of task is the RACI model to guarantee a smooth and efficient cooperation of the various participant. 
    • Responsible: The person who has to do it. (The doer).
    • Accountable: The person who makes the final decision and who has ultimate ownership of the task.
    • Consulted: The person who is consulted BEFORE a decision or action is taken.
    • Informed: The person who is informed that a decision or action is taken.
  • Hashiconf 16 : 2016 Hashi corp conference videos. For all the consul addict out there. 
  • Startup text rpg: Hillarious exchange of a text RPG style game where you are a Startup founder. Read the thread. 

Wednesday, October 05, 2016

[Links of the day] 05/10/2016 : SQL Scan using NVMe to GPU using P2P DMA , Strange Loop 2016, Secure Time Service

  • SSD-to-GPU Direct DMA : Interesting work where the author use p2p DMS to load data from NVMe to GPU. This bypass the RAM altogether. The objective is to accelerate PostgreSQL scan operation. This is really neat, but I am not sure that the SQL DB are the best choice of use case. I would have thought that columnar or K/V system would held better speedup potential because of the way the data is organised and processed. 
  • Strange Loop : all the video of strange loop 2016 conference. Way too many good talk to mention them all. Just check it out. 
  • RoughTime : secure time synchronization project. Everybody use time, but nobody mention clock attack. This project aim at alleviating this potential threat. So you know all your data is accurately fresh. 

Monday, October 03, 2016

[Links of the day] 03/10/2016 : Designing Internet Scale Services and Machine learning podcast