See more of Facebook Engineering by logging into Facebook
Message this Page, learn about upcoming events and more.
See more of Facebook Engineering by logging into Facebook
Message this Page, learn about upcoming events and more.
Not Now
Community
Icon of invite friends to like the lage
Invite your friends to like this Page
Highlights info row image
11,387,825 people like this
AboutSee All
Highlights info row image
Other · Home
People Also Like
Posts

Jupiter is a high-performance service that matches tests and other automated jobs to the machines that are best equipped to handle them. Jupiter removes the bottleneck effect, cutting down the time a job waits for a machine from minutes to milliseconds, saving hours of engineering time every week.

The automated system matches backend jobs to the machines best equipped to handle them in a matter of milliseconds.
code.facebook.com

At Facebook, every change made to our mobile code is checked by our open source static analyzer Infer. Despite Infer's advantages, one of its limitations has been its extensibility. Adding a checker for a new type of bug was a complex task and required a lot of deep static analysis expertise as well as knowledge about Infer's internals. For this reason, we have introduced a new language called AL to easily design new checkers for detecting bugs. It doesn't require any knowledge of the internals of Infer — writing a new checker can normally be done with few lines of code.

AL is a simple, declarative language for reasoning about abstract syntax trees, and it's easy, quick, and interactive.
code.facebook.com
Videos
Journey inside our data centers to learn how Facebook built some of the most innovative and efficient infrastructure in the industry.
10K
1K
F8 Keynote - Joaquin Candela
364
49
F8 Keynote - Christine Abernathy
260
34
Posts

As more people across the world connect on Facebook, we want to make sure our apps and services work well in a myriad of scenarios. At Facebook's scale, this means testing hundreds of important interactions across numerous types of devices and operating systems for both correctness and speed before we ship new code. Today we introduced One World, a unified resource management system that gives engineers access to thousands of test devices, web browsers, and emulators in our data centers through a single API.

With a single API, engineers at Facebook can interact with thousands of mobile devices, browsers, and emulators in our data centers to test new code before it ships.
code.facebook.com

On Facebook, people share billions of photos every day, making it challenging to scroll backward in time to find photos posted a few days ago, let alone months or years ago. To help people to find the photos they're looking for more easily, Facebook’s Photo Search team applied machine learning techniques to better understand what’s in an image as well as improve the search and retrieval process.

Facebook’s Photo Search team applied machine learning techniques to better understand what’s in an image as well as improve the search and retrieval process.
code.facebook.com

One of the long-term goals in AI is to develop intelligent chat bots that can converse with people in a natural way. Since human dialog is so varied, chat bots must be skilled at many related tasks. Today the Facebook AI Research (FAIR) team announced a new, open source platform for training and testing dialog models across multiple tasks at once. ParlAI is a one-stop shop for dialog research, where researchers can submit new tasks and training algorithms to a single, shared repository, changing the way dialog research is done.

ParlAI is a one-stop shop for dialog research, where researchers can submit new tasks and training algorithms to a single, shared repository.
code.facebook.com

Today, the Facebook AI Research team released pre-trained vectors in 294 languages, accompanied by two quick-start tutorials, to increase fastText’s accessibility to the large community of students, software developers, and researchers interested in machine learning. In addition, fastText’s models now fit on smartphones and small computers like Raspberry Pi devices thanks to a new functionality that reduces memory usage.

fastText now has 294 languages and fits on smartphones and small computers like Raspberry Pi.
code.facebook.com

Facebook's global data center infrastructure carries both egress and internal server-to-server traffic. As our bandwidth needs increased, we realized the need to split the cross-data center vs internet-facing traffic into different networks and optimize them individually. In a less than a year, we built the first version of our new cross-data center network, called the Express Backbone.

Increased bandwidth demand for replication of rich content like photos and video challenged the classic backbone network design.
code.facebook.com

This week we introduced Relay Modern, a new version of Relay, our JavaScript framework for building data-driven applications. Relay Modern is designed from the ground up to be easier to use, more extensible and, most of all, able to improve performance on mobile devices.

The new version of Relay is designed from the ground up to be easier to use, more extensible, and optimized for mobile devices.
code.facebook.com

This week at F8 we open-sourced Litho, a declarative framework for efficient UIs on Android. Litho lays out components ahead of time in a background thread, and renders incrementally to deliver best-in-class performance and free developers from painstakingly hand-optimizing their UIs.

Litho lays out components ahead of time in a background thread, and renders incrementally to deliver best-in-class performance.
code.facebook.com

Read more about React VR, a new library that will allow developers everywhere to build compelling experiences for VR. Expanding on the declarative programming style of React and React Native, React VR allows anyone with an understanding of JavaScript to rapidly build and deploy VR experiences using standard web tools.

Expanding on the declarative programming style of React and React Native, React VR lets anyone with an understanding of JavaScript rapidly build and deploy VR experiences using standard web tools.
code.facebook.com

At F8 we shared our work on three new technologies that 360 video more accessible under difficult network conditions: a gravitational predictor, AI-powered saliency maps, and a content-dependent streaming model.

We gave our system the ability to intuit the most interesting parts of a video, to help prioritize where to concentrate the pixels in a stream.
code.facebook.com

Today at F8 we released the 360 Capture SDK. VR experiences can be captured in the form of 360 photos and videos instantly and then uploaded to be viewed in News Feed or a VR headset. Now, people no longer need the power of a supercomputer to capture their VR experiences. The SDK is compatible with multiple game engines, but also works on baseline recommended hardware for VR without compromising quality or speed.

We've created an easy way for you to capture and share your PC VR experiences through 360 photos and videos.
code.facebook.com

Facebook AI Similarity Search, or Faiss, is an open source library for large-scale nearest neighbor search implementations. Faiss is optimized for memory usage and speed and offers a state-of-the-art GPU implementation.

Vector representation allows for fast, large-scale image searches where traditional key/value queries fall short.
code.facebook.com

Modern web applications contain complex and dense user interface patterns — infinitely scrolling lists of content, menu bars, and complex data tables with interactive controls in cells, to name a few components. With a mouse pointer, a person can easily traverse the controls and items of an application. For a keyboard user, traversing a page via the Tab key becomes more cumbersome as the number of controls and items increases.

At Facebook, we are experimenting with a user interface pattern for traversing a page with a keyboard that we call a logical grid, which we hope will become a recognizable and expected pattern of traversing through UI components on the web.

The logical grid is a generic UI design pattern that web applications can adopt to reduce interface complexity and improve keyboard interaction support.
code.facebook.com

Facebook uses machine learning and ranking models to deliver the best experiences across many different parts of the app, such as which notifications to send, which stories you see in News Feed, or which recommendations you get for Pages you might want to follow. To surface the most relevant content, it’s important to have high-quality machine learning models. More complex models can help improve the precision of our predictions and show more relevant content, but the trade-off is that they require more CPU cycles and can take longer to return results. With a type of predictive model called a gradient-boosted decision tree, we were able to evaluate more inventory in the same time frame and with the same computing resources, for up to a 5x improvement over plain compiled models.

Efficiency improvements resulted in evaluating larger models in the same amount of time and with the same CPU resources.
code.facebook.com

Over the past few years, we've been working to upgrade our data centers to run at 100 gigabits per second. To do so, we needed to deploy 100G optical connections to connect the switch fabric at higher data rates and allow for future upgradability — all while keeping power consumption low and increasing efficiency. We created a 100G single-mode optical transceiver solution, which we've shared through the Open Compute Project.

The single-mode optical transceiver enables Facebook's data centers to serve traffic at 100 Gb/s while keeping power consumption low and increasing efficiency.
code.facebook.com

Bryce Canyon, our next-generation high-density storage server, is designed to support more powerful processors and more memory, and improves thermal and power efficiency by taking in air underneath the chassis. Our goal was to build a platform that would not only meet our storage needs today, but also scale to accommodate new modules for future growth.

Bryce Canyon will primarily be used for high-density storage and is designed to support more powerful processors and more memory, while also improving thermal and power efficiency.
code.facebook.com