SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
FOSDEM 2014
Maksim Melnikau
How Find and Fix Million Grammar and Style Errors in Wikipedia
Wikipedia uses LanguageTool(LT) to find grammar errors
LT - the next step after spell checking, LGPL, 10 regular commiters, Java+XML
finds errors, but explanation sometimes wrong
68000 assembler (suggest: assemblers), if a is algebraic over K(suggest: an)
LT: plain text => sentences => words => find part-of-speech and base form
=> analyze sentences against error patterns
LT patterns are easy to contribute in XML format, no Java skills required
LT supports many different languages including Russian and Belorussian
grammar — rules that describe how valid words, sentences, and texts looks like
Sorry for my bed English grammatically is fine...
http://community.languagetool.org/feedMatches/list?lang=en
no need to stick to spell checking today - more powerful checks are available
FOSDEM 2014, Maksim Melnikau
kdbus, Lennart Poettering
D-Bus is powerful IPC: method call transactions, signals, properties,
broadcasting, discovery, introspection, policy, activation, security,
monitoring, expose APIs, File Description passing, language agnostic
D-Bus has limitations: suitable only for control, not payload,
inefficient; not available in early boot, initrd; baroque codebase
if you try to solve problem with XML, you have two problems
but still, D-Bus is fantastic, solves real problems
kdbus suitable for large data (GiB!), zero-copy, optionally reusable,
implicit timestamping; always available; no XML...
2 previous tries to get D-Bus in kernel grandiosely failed

FOSDEM 2014, Maksim Melnikau
miracast on Linux

miracast: HDMI over IP over Wifi
ieee 802.11; wifi-p2p => wifi direct; wifi-display => miracast
miracast: P2P transport setup, ip link auto discovery, A/V streams
mirascast: many Linux wifi drivers not working (b43, brcmac, rtl818x, ath5k)
some supposed to work (ath9k, brcmfmac, iwl-mvm)...
known to work: iwl+mwm + intel wifi 7260 + wpa_supplicant: git-78f79 ...
HDMI over IP is RTSP + RTP + h264 + audio + mpeg2-TS
Additional Features: PTP, HDCP, UIBC, split-sink

FOSDEM 2014, Maksim Melnikau
Sailfish and Jolla
half people at sailfish talk have Jolla device already
Jolla: recovery mode, fastboot, unlocked bootloader, flash own kernels, full root
sailfishos: systemd, gcc, btrfs, gstreamer, Wayland, qt5
Jolla not contribute to: L&F UI, 3rd party closed source drivers, some NDA stuff
https://together.jolla.com/questions/
contribute to sailfishos: contribute to nemo, mer, and a lot of upstream projects!
libhybris - leverage existing Android hardware adaptation
libhybris - port Android/bionic linker to glibc environment
load glibc and bionic to address space of process — works for almost all cases
android_dlopen("libEGL.so") - we could wrappers that accessed the android ones
libhybris today used by Jolla/SailfishOS, Intel/Tizen, Canonical/Ubuntu
FOSDEM 2014, Maksim Melnikau
Fedora.Next

Fedora.Next split to Workstation, Server, Cloud
Fedora Workstation — GUE for Students, Developers, etc ...
Fedora Server — headless pet server, server roles, IaaS Host,
stable platform for critical infrastructure
Fedora Cloud — cloud image cattle server, scale-out, packaged images for clouds
Fedora has so many infrastructure problems: bugs, reviews, build system, etc ...

FOSDEM 2014, Maksim Melnikau
FOSDEM network, NAT64 and DNS64
FOSDEM had ipv6-only wifi network by default
but too many people escaped to fosdem-dualstack
IPv4 has run out, IPv5 never made it to public use, so IPv6
there was a war in begging of IPv6: 64bit vs unlimited!
clients, content, carriers, applications, hardware - nobody want to do first step
World IPv6 day - lets turn it on and see what breaks
Google, facebook, yahoo, youtube, netflix, akamai and many more run ipv6 today
different countries enables ipv6 one by one - France, Germany, Belgium etc
if you run NAT anyway - why not unable IPv6 and use NAT64 and DNS64 ?!
we can hide a complete legacy internet in a /96!
Nexus(Android) could not get ipv6 only address
FOSDEM’14 — first general-purpose conference which has ipv6 network by default
FOSDEM 2014, Maksim Melnikau
KDE Connect

fuse your devices as mush as possible and desirable
protocol: json based, medium abstracted, easy extended, easy implemented
notifications, actions, battery, MPRIS2, send files and urls
clipboard synchronization, encryption, ...
Qt => libconnect => server => plugins => D-Bus => plasma, kcm, apps

FOSDEM 2014, Maksim Melnikau
GPU Offload on Wayland
render-nodes — render without authentication to DRM master
1080p buffer with 60fps is 480MB/s, PCI express is 4GB/s, thunderbolt is 1GB/s
tiling — special pixel ordering optimized to exploit local spatial coherence
— good for performance
GPU offload with X DRI2: DDX per device/provider, configure with xrandr
two displays: A and B, two cards: 1 connected to A, 2 connected to B
— classic nvidia optimus layout
wayland gpu offload: shutdown the dedicated GPU when unneeded works now
XWayland: wlglamor, X linked to Wayland compositor - no need for gpu offloading

FOSDEM 2014, Maksim Melnikau
Wine User Experience

once a year somebody writes at wine forum what "everything is work, you rock!"
Ubuntu still ships 1.4.x wine version, why?!
common problem when you answer to user question:
if user hides, you don’t know why: does everything work, user give up or died ...

FOSDEM 2014, Maksim Melnikau
Performance of Wine and Graphical Drivers
command stream multi thread (CSMT) - move most d3d work into separate thread
better CPU utilization => 2x performance (in theory)
easy synchronization in multi-threaded games, even bigger performance gains
3x in CoD 4:MW, btw Windows does the same thing
wine CSMT improvements - some games faster on wine than on windows
CSMT brings better performance mostly on fast systems like 460gtx + i7 ...
drivers don’t like to be called from two threads without looking
even with separate contexts
CSMT and NVIDIAS’s threaded opt - essentially the same thing
CSMT wine next steps: upstream, improve data streaming, reduce draw overhead
in wine, wine performance outside d3d ...
wine could have a big problems running on wayland natively
— many windows apps rely on window posistions for example
FOSDEM 2014, Maksim Melnikau
Persistent Storage
file system performance: maximize throughput or latency?
target embedded, power consumption or performance?
high bandwidth has been the traditional focus — backup, streaming video, etc
SSD’s made life more complicated — not too painful at first, plaggued in
PCI-e SSD devices turn up the heat
opened a lot of other bottlenecks in Linux Storage Stack — 1 million IOPS/device
a single file system is easy for users and applications, and can perform better
wow! fsck which works more than week!
persistent memory - a variety of new technologies are coming from multiple vendors
— Linux need to be (mostly) technology neutral
SNIA - Storage Network Industry Association, Working Group on NVM.
SMR and PM together - interesting workload for out future
normally block size limit is 4k, storage hardware often have very large - 64k
PS — you will never ever wait for storage anymore, CPU will be bottleneck
FOSDEM 2014, Maksim Melnikau
Concurrent Programming Made Simple - Transaction Memory
shared memory (synchronization) + Transactions = Transaction memory (TM)
TM — programming abstraction, declare which code sequences are atomic
TM is still rather new - standardization for C/C++ started 5 years go
GCC has support since 4.7, HW implementations — Haswell
__transaction_atomic { if (x<10) y++; } - code must be transaction-safe
extend the C11/C++11 memory model — all transactions totally ordered
GCC: compiler — ensure atomicity guarantee (at compile time)
GCC: TM runtime library (libitm) => enforces atomicity o transactions at runtime
(contains SW-only implementation)
performance: it’s a tool, not magic - useful balance, implementations are wip
single-thread performance: STM slower than sequential, HTM equals
in multi-thread: both STM and HTM scales well
TM, use it: gcc -fgnu-tm, report bugs and dive into libitm / GCC
eventually consistency — is not consistency at all
FOSDEM 2014, Maksim Melnikau
Thank You. Questions
Maksim Melnikau
mailto:maxposedon@gmail.com
https://plus.google.com/+MaksimMelnikau
https://twitter.com/max_posedon
https://fosdem.org/2014/
https://www.languagetool.org/
http://lwn.net/Articles/580194/
http://www.freedesktop.org/wiki/Software/openwfd/
http://jolla.com/
http://fedoraproject.org/wiki/Fedora.next
http://en.wikipedia.org/wiki/NAT64
https://fosdem.org/2014/schedule/event/kde_connect/
http://wayland.freedesktop.org/
http://www.winehq.org/

Más contenido relacionado

La actualidad más candente

Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...
Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...
Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...Anne Nicolas
 
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...AiTi Education
 
Future of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsFuture of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsAniruddha Chakrabarti
 
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...Zohar Babin
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for BeginnersNAILBITER
 
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)Ron Munitz
 
Os Paesdosreistutorial
Os PaesdosreistutorialOs Paesdosreistutorial
Os Paesdosreistutorialoscon2007
 
Container Support in IBM Spectrum LSF
Container Support in IBM Spectrum LSFContainer Support in IBM Spectrum LSF
Container Support in IBM Spectrum LSFGabor Samu
 
FMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxFMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxEmbarcadero Technologies
 
Minko - Scripting 3D apps with Lua and C++
Minko - Scripting 3D apps with Lua and C++Minko - Scripting 3D apps with Lua and C++
Minko - Scripting 3D apps with Lua and C++Minko3D
 
Synapse india fundamentals of dotnet development
Synapse india fundamentals of dotnet  developmentSynapse india fundamentals of dotnet  development
Synapse india fundamentals of dotnet developmentSynapseindiappsdevelopment
 

La actualidad más candente (16)

Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...
Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...
Distro Recipes 2013 : Contribution of RDF metadata for traceability among pro...
 
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
 
Understand
UnderstandUnderstand
Understand
 
Future of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsFuture of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows Platforms
 
The windows socket
The windows socketThe windows socket
The windows socket
 
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...
Debugging LAMP Apps on Linux/UNIX Using Open Source Tools - Jess Portnot - OS...
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for Beginners
 
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)
 
Os Paesdosreistutorial
Os PaesdosreistutorialOs Paesdosreistutorial
Os Paesdosreistutorial
 
Welcome to windows 8
Welcome to windows 8Welcome to windows 8
Welcome to windows 8
 
nullcon 2011 - Fuzzing with Complexities
nullcon 2011 - Fuzzing with Complexitiesnullcon 2011 - Fuzzing with Complexities
nullcon 2011 - Fuzzing with Complexities
 
Container Support in IBM Spectrum LSF
Container Support in IBM Spectrum LSFContainer Support in IBM Spectrum LSF
Container Support in IBM Spectrum LSF
 
FMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxFMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for Linux
 
Minko - Scripting 3D apps with Lua and C++
Minko - Scripting 3D apps with Lua and C++Minko - Scripting 3D apps with Lua and C++
Minko - Scripting 3D apps with Lua and C++
 
Drupal refcard
Drupal refcardDrupal refcard
Drupal refcard
 
Synapse india fundamentals of dotnet development
Synapse india fundamentals of dotnet  developmentSynapse india fundamentals of dotnet  development
Synapse india fundamentals of dotnet development
 

Destacado

Корпоративная презентация в Beamer
Корпоративная презентация в BeamerКорпоративная презентация в Beamer
Корпоративная презентация в BeamerMaksim Melnikau
 
World of tanks: высокие нагрузки
World of tanks: высокие нагрузкиWorld of tanks: высокие нагрузки
World of tanks: высокие нагрузкиMaksim Melnikau
 
Python meetup, Minsk, August
Python meetup, Minsk, AugustPython meetup, Minsk, August
Python meetup, Minsk, AugustMaksim Melnikau
 
Python meetup, Minsk, November
Python meetup, Minsk, NovemberPython meetup, Minsk, November
Python meetup, Minsk, NovemberMaksim Melnikau
 
Zero downtime upgrade на коленках
Zero downtime upgrade на коленкахZero downtime upgrade на коленках
Zero downtime upgrade на коленкахMaksim Melnikau
 
World of Tanks: один миллион игроков онлайн
World of Tanks: один миллион игроков онлайнWorld of Tanks: один миллион игроков онлайн
World of Tanks: один миллион игроков онлайнMaksim Melnikau
 
World of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideWorld of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideMaksim Melnikau
 
Python meetup, Minsk, September
Python meetup, Minsk, SeptemberPython meetup, Minsk, September
Python meetup, Minsk, SeptemberMaksim Melnikau
 
World of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработкиWorld of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработкиMaksim Melnikau
 
World of Tanks: на пути к 1M CCU
World of Tanks: на пути к 1M CCUWorld of Tanks: на пути к 1M CCU
World of Tanks: на пути к 1M CCUMaksim Melnikau
 
IPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPNIPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPNMaksim Melnikau
 
World of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideWorld of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideMaksim Melnikau
 

Destacado (15)

Ubuntu touch-install
Ubuntu touch-installUbuntu touch-install
Ubuntu touch-install
 
Корпоративная презентация в Beamer
Корпоративная презентация в BeamerКорпоративная презентация в Beamer
Корпоративная презентация в Beamer
 
World of tanks: высокие нагрузки
World of tanks: высокие нагрузкиWorld of tanks: высокие нагрузки
World of tanks: высокие нагрузки
 
Python meetup, Minsk, August
Python meetup, Minsk, AugustPython meetup, Minsk, August
Python meetup, Minsk, August
 
Python meetup, Minsk, November
Python meetup, Minsk, NovemberPython meetup, Minsk, November
Python meetup, Minsk, November
 
Zero downtime upgrade на коленках
Zero downtime upgrade на коленкахZero downtime upgrade на коленках
Zero downtime upgrade на коленках
 
World of Tanks: один миллион игроков онлайн
World of Tanks: один миллион игроков онлайнWorld of Tanks: один миллион игроков онлайн
World of Tanks: один миллион игроков онлайн
 
World of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideWorld of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source Inside
 
Python meetup, Minsk, September
Python meetup, Minsk, SeptemberPython meetup, Minsk, September
Python meetup, Minsk, September
 
World of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработкиWorld of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработки
 
World of Tanks: на пути к 1M CCU
World of Tanks: на пути к 1M CCUWorld of Tanks: на пути к 1M CCU
World of Tanks: на пути к 1M CCU
 
Wayland state in Gentoo
Wayland state in GentooWayland state in Gentoo
Wayland state in Gentoo
 
Wargaming web
Wargaming webWargaming web
Wargaming web
 
IPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPNIPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPN
 
World of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source InsideWorld of Tanks: Linux and Open Source Inside
World of Tanks: Linux and Open Source Inside
 

Similar a FOSDEM 2014 Overview

Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesSamsung Open Source Group
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Hajime Tazaki
 
Tesla Hacking to FreedomEV
Tesla Hacking to FreedomEVTesla Hacking to FreedomEV
Tesla Hacking to FreedomEVJasper Nuyens
 
Ubuntu and Linux Terminal Server Project
Ubuntu and Linux Terminal Server ProjectUbuntu and Linux Terminal Server Project
Ubuntu and Linux Terminal Server ProjectSameer Verma
 
How Android is different from other systems – An exploration of the design de...
How Android is different from other systems – An exploration of the design de...How Android is different from other systems – An exploration of the design de...
How Android is different from other systems – An exploration of the design de...IndicThreads
 
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...Igalia
 
The Forefront of the Development for NVDIMM on Linux Kernel
The Forefront of the Development for NVDIMM on Linux KernelThe Forefront of the Development for NVDIMM on Linux Kernel
The Forefront of the Development for NVDIMM on Linux KernelYasunori Goto
 
WebGL games with Minko - Next Game Frontier 2014
WebGL games with Minko - Next Game Frontier 2014WebGL games with Minko - Next Game Frontier 2014
WebGL games with Minko - Next Game Frontier 2014Minko3D
 
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copy
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copyLinux containers – next gen virtualization for cloud (atl summit) ar4 3 - copy
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copyBoden Russell
 
Making Networking Apps Scream on Windows with DPDK
Making Networking Apps Scream on Windows with DPDKMaking Networking Apps Scream on Windows with DPDK
Making Networking Apps Scream on Windows with DPDKMichelle Holley
 
Mac OSX - Presentation for NEWLUG - Nov. 2010
Mac OSX - Presentation for NEWLUG - Nov. 2010Mac OSX - Presentation for NEWLUG - Nov. 2010
Mac OSX - Presentation for NEWLUG - Nov. 2010NEWLUG
 
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...Andrey Korolyov
 
Redfish and python-redfish for Software Defined Infrastructure
Redfish and python-redfish for Software Defined InfrastructureRedfish and python-redfish for Software Defined Infrastructure
Redfish and python-redfish for Software Defined InfrastructureBruno Cornec
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linuxanandvaidya
 
Embedded Linux Talk Uni Forum
Embedded Linux Talk Uni ForumEmbedded Linux Talk Uni Forum
Embedded Linux Talk Uni ForumSumant Diwakar
 
Resilience: the key requirement of a [big] [data] architecture - StampedeCon...
Resilience: the key requirement of a [big] [data] architecture  - StampedeCon...Resilience: the key requirement of a [big] [data] architecture  - StampedeCon...
Resilience: the key requirement of a [big] [data] architecture - StampedeCon...StampedeCon
 

Similar a FOSDEM 2014 Overview (20)

Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)
 
World of Node.JS
World of Node.JSWorld of Node.JS
World of Node.JS
 
Tesla Hacking to FreedomEV
Tesla Hacking to FreedomEVTesla Hacking to FreedomEV
Tesla Hacking to FreedomEV
 
Ubuntu and Linux Terminal Server Project
Ubuntu and Linux Terminal Server ProjectUbuntu and Linux Terminal Server Project
Ubuntu and Linux Terminal Server Project
 
How Android is different from other systems – An exploration of the design de...
How Android is different from other systems – An exploration of the design de...How Android is different from other systems – An exploration of the design de...
How Android is different from other systems – An exploration of the design de...
 
Medusa Project
Medusa ProjectMedusa Project
Medusa Project
 
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2...
 
The Forefront of the Development for NVDIMM on Linux Kernel
The Forefront of the Development for NVDIMM on Linux KernelThe Forefront of the Development for NVDIMM on Linux Kernel
The Forefront of the Development for NVDIMM on Linux Kernel
 
WebGL games with Minko - Next Game Frontier 2014
WebGL games with Minko - Next Game Frontier 2014WebGL games with Minko - Next Game Frontier 2014
WebGL games with Minko - Next Game Frontier 2014
 
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copy
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copyLinux containers – next gen virtualization for cloud (atl summit) ar4 3 - copy
Linux containers – next gen virtualization for cloud (atl summit) ar4 3 - copy
 
Making Networking Apps Scream on Windows with DPDK
Making Networking Apps Scream on Windows with DPDKMaking Networking Apps Scream on Windows with DPDK
Making Networking Apps Scream on Windows with DPDK
 
Node js meetup
Node js meetupNode js meetup
Node js meetup
 
Mac OSX - Presentation for NEWLUG - Nov. 2010
Mac OSX - Presentation for NEWLUG - Nov. 2010Mac OSX - Presentation for NEWLUG - Nov. 2010
Mac OSX - Presentation for NEWLUG - Nov. 2010
 
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...
CloudOpen 2013: Developing cloud infrastructure: from scratch: the tale of an...
 
Redfish and python-redfish for Software Defined Infrastructure
Redfish and python-redfish for Software Defined InfrastructureRedfish and python-redfish for Software Defined Infrastructure
Redfish and python-redfish for Software Defined Infrastructure
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linux
 
Embedded Linux Talk Uni Forum
Embedded Linux Talk Uni ForumEmbedded Linux Talk Uni Forum
Embedded Linux Talk Uni Forum
 
Touch your NetBSD
Touch your NetBSDTouch your NetBSD
Touch your NetBSD
 
Resilience: the key requirement of a [big] [data] architecture - StampedeCon...
Resilience: the key requirement of a [big] [data] architecture  - StampedeCon...Resilience: the key requirement of a [big] [data] architecture  - StampedeCon...
Resilience: the key requirement of a [big] [data] architecture - StampedeCon...
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 

Último (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

FOSDEM 2014 Overview

  • 2.
  • 3. How Find and Fix Million Grammar and Style Errors in Wikipedia Wikipedia uses LanguageTool(LT) to find grammar errors LT - the next step after spell checking, LGPL, 10 regular commiters, Java+XML finds errors, but explanation sometimes wrong 68000 assembler (suggest: assemblers), if a is algebraic over K(suggest: an) LT: plain text => sentences => words => find part-of-speech and base form => analyze sentences against error patterns LT patterns are easy to contribute in XML format, no Java skills required LT supports many different languages including Russian and Belorussian grammar — rules that describe how valid words, sentences, and texts looks like Sorry for my bed English grammatically is fine... http://community.languagetool.org/feedMatches/list?lang=en no need to stick to spell checking today - more powerful checks are available FOSDEM 2014, Maksim Melnikau
  • 4. kdbus, Lennart Poettering D-Bus is powerful IPC: method call transactions, signals, properties, broadcasting, discovery, introspection, policy, activation, security, monitoring, expose APIs, File Description passing, language agnostic D-Bus has limitations: suitable only for control, not payload, inefficient; not available in early boot, initrd; baroque codebase if you try to solve problem with XML, you have two problems but still, D-Bus is fantastic, solves real problems kdbus suitable for large data (GiB!), zero-copy, optionally reusable, implicit timestamping; always available; no XML... 2 previous tries to get D-Bus in kernel grandiosely failed FOSDEM 2014, Maksim Melnikau
  • 5. miracast on Linux miracast: HDMI over IP over Wifi ieee 802.11; wifi-p2p => wifi direct; wifi-display => miracast miracast: P2P transport setup, ip link auto discovery, A/V streams mirascast: many Linux wifi drivers not working (b43, brcmac, rtl818x, ath5k) some supposed to work (ath9k, brcmfmac, iwl-mvm)... known to work: iwl+mwm + intel wifi 7260 + wpa_supplicant: git-78f79 ... HDMI over IP is RTSP + RTP + h264 + audio + mpeg2-TS Additional Features: PTP, HDCP, UIBC, split-sink FOSDEM 2014, Maksim Melnikau
  • 6. Sailfish and Jolla half people at sailfish talk have Jolla device already Jolla: recovery mode, fastboot, unlocked bootloader, flash own kernels, full root sailfishos: systemd, gcc, btrfs, gstreamer, Wayland, qt5 Jolla not contribute to: L&F UI, 3rd party closed source drivers, some NDA stuff https://together.jolla.com/questions/ contribute to sailfishos: contribute to nemo, mer, and a lot of upstream projects! libhybris - leverage existing Android hardware adaptation libhybris - port Android/bionic linker to glibc environment load glibc and bionic to address space of process — works for almost all cases android_dlopen("libEGL.so") - we could wrappers that accessed the android ones libhybris today used by Jolla/SailfishOS, Intel/Tizen, Canonical/Ubuntu FOSDEM 2014, Maksim Melnikau
  • 7. Fedora.Next Fedora.Next split to Workstation, Server, Cloud Fedora Workstation — GUE for Students, Developers, etc ... Fedora Server — headless pet server, server roles, IaaS Host, stable platform for critical infrastructure Fedora Cloud — cloud image cattle server, scale-out, packaged images for clouds Fedora has so many infrastructure problems: bugs, reviews, build system, etc ... FOSDEM 2014, Maksim Melnikau
  • 8. FOSDEM network, NAT64 and DNS64 FOSDEM had ipv6-only wifi network by default but too many people escaped to fosdem-dualstack IPv4 has run out, IPv5 never made it to public use, so IPv6 there was a war in begging of IPv6: 64bit vs unlimited! clients, content, carriers, applications, hardware - nobody want to do first step World IPv6 day - lets turn it on and see what breaks Google, facebook, yahoo, youtube, netflix, akamai and many more run ipv6 today different countries enables ipv6 one by one - France, Germany, Belgium etc if you run NAT anyway - why not unable IPv6 and use NAT64 and DNS64 ?! we can hide a complete legacy internet in a /96! Nexus(Android) could not get ipv6 only address FOSDEM’14 — first general-purpose conference which has ipv6 network by default FOSDEM 2014, Maksim Melnikau
  • 9. KDE Connect fuse your devices as mush as possible and desirable protocol: json based, medium abstracted, easy extended, easy implemented notifications, actions, battery, MPRIS2, send files and urls clipboard synchronization, encryption, ... Qt => libconnect => server => plugins => D-Bus => plasma, kcm, apps FOSDEM 2014, Maksim Melnikau
  • 10. GPU Offload on Wayland render-nodes — render without authentication to DRM master 1080p buffer with 60fps is 480MB/s, PCI express is 4GB/s, thunderbolt is 1GB/s tiling — special pixel ordering optimized to exploit local spatial coherence — good for performance GPU offload with X DRI2: DDX per device/provider, configure with xrandr two displays: A and B, two cards: 1 connected to A, 2 connected to B — classic nvidia optimus layout wayland gpu offload: shutdown the dedicated GPU when unneeded works now XWayland: wlglamor, X linked to Wayland compositor - no need for gpu offloading FOSDEM 2014, Maksim Melnikau
  • 11. Wine User Experience once a year somebody writes at wine forum what "everything is work, you rock!" Ubuntu still ships 1.4.x wine version, why?! common problem when you answer to user question: if user hides, you don’t know why: does everything work, user give up or died ... FOSDEM 2014, Maksim Melnikau
  • 12. Performance of Wine and Graphical Drivers command stream multi thread (CSMT) - move most d3d work into separate thread better CPU utilization => 2x performance (in theory) easy synchronization in multi-threaded games, even bigger performance gains 3x in CoD 4:MW, btw Windows does the same thing wine CSMT improvements - some games faster on wine than on windows CSMT brings better performance mostly on fast systems like 460gtx + i7 ... drivers don’t like to be called from two threads without looking even with separate contexts CSMT and NVIDIAS’s threaded opt - essentially the same thing CSMT wine next steps: upstream, improve data streaming, reduce draw overhead in wine, wine performance outside d3d ... wine could have a big problems running on wayland natively — many windows apps rely on window posistions for example FOSDEM 2014, Maksim Melnikau
  • 13. Persistent Storage file system performance: maximize throughput or latency? target embedded, power consumption or performance? high bandwidth has been the traditional focus — backup, streaming video, etc SSD’s made life more complicated — not too painful at first, plaggued in PCI-e SSD devices turn up the heat opened a lot of other bottlenecks in Linux Storage Stack — 1 million IOPS/device a single file system is easy for users and applications, and can perform better wow! fsck which works more than week! persistent memory - a variety of new technologies are coming from multiple vendors — Linux need to be (mostly) technology neutral SNIA - Storage Network Industry Association, Working Group on NVM. SMR and PM together - interesting workload for out future normally block size limit is 4k, storage hardware often have very large - 64k PS — you will never ever wait for storage anymore, CPU will be bottleneck FOSDEM 2014, Maksim Melnikau
  • 14. Concurrent Programming Made Simple - Transaction Memory shared memory (synchronization) + Transactions = Transaction memory (TM) TM — programming abstraction, declare which code sequences are atomic TM is still rather new - standardization for C/C++ started 5 years go GCC has support since 4.7, HW implementations — Haswell __transaction_atomic { if (x<10) y++; } - code must be transaction-safe extend the C11/C++11 memory model — all transactions totally ordered GCC: compiler — ensure atomicity guarantee (at compile time) GCC: TM runtime library (libitm) => enforces atomicity o transactions at runtime (contains SW-only implementation) performance: it’s a tool, not magic - useful balance, implementations are wip single-thread performance: STM slower than sequential, HTM equals in multi-thread: both STM and HTM scales well TM, use it: gcc -fgnu-tm, report bugs and dive into libitm / GCC eventually consistency — is not consistency at all FOSDEM 2014, Maksim Melnikau
  • 15. Thank You. Questions Maksim Melnikau mailto:maxposedon@gmail.com https://plus.google.com/+MaksimMelnikau https://twitter.com/max_posedon https://fosdem.org/2014/ https://www.languagetool.org/ http://lwn.net/Articles/580194/ http://www.freedesktop.org/wiki/Software/openwfd/ http://jolla.com/ http://fedoraproject.org/wiki/Fedora.next http://en.wikipedia.org/wiki/NAT64 https://fosdem.org/2014/schedule/event/kde_connect/ http://wayland.freedesktop.org/ http://www.winehq.org/