SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
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/

Contenu connexe

Tendances

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
 
Os Paesdosreistutorial
Os PaesdosreistutorialOs Paesdosreistutorial
Os Paesdosreistutorial
oscon2007
 
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
 

Tendances (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
 

En vedette

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, August
Maksim Melnikau
 
Python meetup, Minsk, November
Python meetup, Minsk, NovemberPython meetup, Minsk, November
Python meetup, Minsk, November
Maksim 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 Inside
Maksim Melnikau
 
Python meetup, Minsk, September
Python meetup, Minsk, SeptemberPython meetup, Minsk, September
Python meetup, Minsk, September
Maksim Melnikau
 
World of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработкиWorld of Tanks: несколько идей из опыта разработки
World of Tanks: несколько идей из опыта разработки
Maksim Melnikau
 
IPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPNIPv6 at Home: NAT64, DNS64, OpenVPN
IPv6 at Home: NAT64, DNS64, OpenVPN
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 Inside
Maksim Melnikau
 

En vedette (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
 

Similaire à FOSDEM 2014 Overview

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
 
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
Minko3D
 
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
Michelle Holley
 
Embedded Linux Talk Uni Forum
Embedded Linux Talk Uni ForumEmbedded Linux Talk Uni Forum
Embedded Linux Talk Uni Forum
Sumant Diwakar
 

Similaire à 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...
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Dernier (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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...
 

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/