Start of main content

Offline day

Tiny cosy offline

 10:1022:00 (UTC+3)

Park Inn by Radisson Pulkovskaya: Pobedy Square 1, Saint-Petersburg, Russian Federation

Covid-19 free zone

Why It’s Worth Going

  • Talk in person

    To see old friends. To discuss current problems. To come up with new ideas. To debate and just chat.

  • Feel the atmosphere of the offline

    To have a change of scenery, to distract and have a good time. To gain fresh impressions and new acquaintances.
    *And for some, to visit Petersburg in the summer.

Program

We will be holding a joint offline day with the C++ Russia 2022 conference.

For your convenience, C++ Russia 2022 activities are tagged #cpp_part.

  • The time in the program is for the time zone UTC+3.

    • Room 2

      Talk

      Distributed transactions implementation trade-offs

      Language -RU

      This is educational first speech. Let's see why ACID transaction properties are important and how they are implemented in distributed databases with sharding and replication. What about geo-distributed databases? Is it possible to achieve fault tolerance (high availability) and support strong consistency in such databases. What are trade offs for performance. discuss famous CAP theorem and what it means for data indexing and DB transactions.

       

    • Room 1

      Talk

      Memory as a Concept in Heterogeneous Systems

      Language -RU

      Memory is something that C++ programmers know very well and think they have control over. But how much is known about memory on the GPU?

      Suddenly, many familiar concepts from the C++ world break down, and creating single-source abstraction layers (such as SYCL) requires introducing a lot of CPU-weird concepts and terms. And all this affects performance. In the talk, Konstantin will take a look at memory as it is understood in C++ and as it is understood for graphics and show a lot of examples on SYCL. 

      • #cpp_part
    • Room 2

      Talk

      Parallel Asynchronous Replication between YDB Database Instances

      Language -RU

      Asynchronous replication is a well-known technique to provide an independent replica of a database for different purposes including disaster recovery, geo-replication or scaling read workload. Traditionally, a log of changes from source replica is treated as an input for target replica database. If source and target replicas are distributed databases that handle high workload, putting all updates to a single log of changes could be nearly impossible. 

    • Room 3

      Talk

      Is there life without RTTI or how to write your own dynamic_cast

      Language -EN

      C++ developers don't like to pay for something they don't use. But there is a nuance, RTTI. As soon as you write dynamic_cast in the code, and you have to pay for runtime type information. We will look at how you can reduce the overhead by implementing your own dynamic_cast without RTTI.

    • Lunch break

      Buffet and beverages of your choosing.

    • Room 1

      Talk

      File system and network stacks in Userland: why we must use them in 2022

      Language -RU

      IO-performance becomes increasingly important:

      • we have more and more cores,
      • PCIe Gen3 is finally turning into PCIe Gen5 and for now it stops being the bottleneck,
      • NVMe drives and 200G NICs means the network is faster and fast.

      Stacks that were OK in the past are not OK now. You can't saturate the HW IO capacity while doing context switches, wakeups in the kernel etc. So what before was an "option" is actually a MUST HAVE for most of the high performance applications.

      • #cpp_part
    • Room 2

      Talk

      What about Binary Search Trees?

      Language -EN

      In this talk, we cover how to design concurrent Binary Search Trees starting from the simplest ones. Hopefully, after this talk, the attendee will understand the standard tricks necessary for the implementation of Binary Search Trees. These tricks are important and can help to implement other more complex data structures.

    • Room 3

      Talk

      Using machine learning to improve inlining in LLVM

      Language -RU

      Feature embedding (inlining) is an optimization that is based on the heuristics used to make the final decision about feature embedding. These heuristics are designed to make an efficient solution in the general case, but, as a consequence, can lead to far from efficient solutions in different from general cases. To solve this problem, LLVM has added support for using a machine learning model that answers the question, based on analysis of the compiled code, whether a function should be embedded into the call point in question. In this talk, we'll look at how this mechanism for determining whether a function should be embedded using machine learning works, how it can improve your program, and what its limitations are.

      • #cpp_part
    • Room 3

      Talk

      C++ compiler and optimizations for open RISC-V instruction set architecture

      Language -RU

      Sergey will talk about C/C++ compiler and application optimization for the open and free RISC-V architecture, the new standard changing the microprocessor world. You will learn about the history of the architecture, current state and plans in the international RISC-V community, architecture support in development tools, source code and compiler optimizations and transformations, performance hints and command  system extensions.

      • #cpp_part
    • Room 1

      Talk

      How to make your life easier when developing a client application in modern C++: an example of VK Calls

      Language -RU

      Developing the VK  Calls desktop application was a real challenge. The team set several goals at once: to provide native builds for Windows, macOS, and Linux, to achieve maximum performance and quality, while removing the limit on the number of participants in the call. And to do all this in the shortest possible time. To do this, we had to think in advance how to cut some of the sharp corners that inevitably arise during the development in  C++.

      • #cpp_part
    • Room 2

      Talk

      Thread pools: variety of algorithms and features

      Language -EN

      This talk will help you dive into the various algorithms that have been implemented in Java, .NET, and other runtimes. We will consider the tasks they solve and learn to understand problem areas. Also, solving certain tasks, we will create our own thread pool, after which we will achieve its maximum performance.

    • Room 3

      Talk

      Type Sanitizer: a way to detect violations of strict aliasing rules in C++

      Language -RU

      This talk describes a dynamic analysis tool that allows detecting strict aliasing rules violation in C++ programs. This topic covers implementation details of this tool that is implemented as a part of LLVM infrastructure. The talk requires basic knowledge of LLVM middle-end part and common ideas of sanitizers (e.g. AddressSanitizer)  implementation.

      • #cpp_part
    • Room 1

      Talk

      What a C++ developer should keep in mind about processor architecture

      Language -RU

      At high loads, code efficiency may be a much better investment than buying new resources. Let's look into the "under the hood" of the processor. We will see what the cache, the pipeline, the vector instructions are for, and also see what else is there. We will look at the differences between x86 and ARM. We will discuss what code should be able to get the most out of the processor and not wait for hundreds of cycles  for that byte to be loaded.

      • #cpp_part
    • Room 2

      Talk

      OK S3

      Language -RU

      Vadim will describe implementation of S3 compatible storage service based on blob and NewSQL storages at Odnoklassniki. The talk will cover the architecture and data model, features and trade-offs, performance and optimization, some intricacies and surprises. The ideas and experience presented in the talk might be useful to designers and developers of distributed storage services, especially S3-compatible and/or Cassandra-based ones.

    • Room 3

      Talk

      Overview of recent research in the field of selection of optimal sequences of optimization passes using ML

      Language -RU

      Now the sequence of optimization passes is chosen with the help of peer review by the compiler developers using a certain set of benchmarks. This is a very difficult task and a huge search space that ML can help with. Roman and Maria will consider approaches to solving this problem. They will make reviews of research papers and the tools and models used, describing their advantages and disadvantages. They will also show what practical results are achievable using machine learning to select the optimal sequence of optimization passes.

      • #cpp_part
    • Room 1

      Discussion

      Roundtable: Concurrency

      Language -RU

      Concurrency in theory. Concurrency in practice. Concurrency in production. We discuss only real-world problems. Talking about upcoming innovations.

      • Daniil Podolsky
      • Nikolay Markov
      • Vitaly Aksenov
      • Ivan Prisyazhniy
      • Ivan Ponomarev
      • Alexander Borgardt
    • Networking

      To see old friends. To discuss current problems. To come up with new ideas. To debate and just chat.

    • Discussion zones

      For chatting with speakers between the talks. No recording, no censorship, no time limitations.
    • Available online

      On the offline day, there will be a broadcast, which is available to participants with an online ticket. If you want to ask the speaker questions in person and get answers, you are welcome to do so at the venue.

    Bonus

    There will be a broadcast on the offline day of the conference, which is available to participants with an online ticket. If you want to ask the speaker questions in person and get answers, you are welcome to do so at the venue.

    If you don’t have an online ticket, if you purchase an offline ticket, you will have access to the 22 talks and other activities from the online part.

    • Coffee and lunch breaks

      Buffet and beverages of your choosing.
      If you have food restrictions, write to our support team. We’ll find a solution.
    • Night

      Networking for all participants, speakers, and experts.
      Informal atmosphere and heart-to-heart talks.
    • If you already have a ticket for online part of the conference, you may upgrade it up to Online+Offline. Write to our support team: support@hydraconf.com
    • We may also provide you with the discount for upgrading, if you filled in the feedback form on online part of the conference — the link to the feedback form will be sent to your email after the online part of the conference is over. When you will ask for upgrading, just let us know in a letter, that you filled in the feedback form, and the discount is yours.
    • Note! If your ticket was paid by the company, you may ask it to pay for upgrading as well. If they won’t agree, you may pay for it by yourself with the discount.

    COVID-free

    There will be a COVID-free zone at our conference. Here we gathered all the questions about attending offline day.

    • How to get to the conference?

      At the entrance, show your passport (or its photo on your smartphone) and a valid QR-code. Our employee will scan the QR-code and verify the data with your passport.

      Please note:

      • If the QR code is invalid, you will be denied attendance at the conference.
      • If you have a European vaccination document, it should clearly state the expiration date of the QR code.
      • If the data doesn’t match due to a name or passport change, you’ll need to show proof of the change.
    • What if I don’t have a QR code?
      At the entrance, you can also present a valid negative result of a PCR test taken no earlier than 48 hours before your registration for the event.
    • What if I don’t have a QR code or PCR result?
      A QR code or PCR test is required for admission to the conference. We can give you an express test at the entrance, but please note that the number of tests will be limited. So try to take care of everything in advance.
    • What if I’ve already bought a ticket? Will the money be refunded?
      No, but you can connect to the broadcast and watch the reports online.
    • What security measures will be in place at the venue?
      • There will be sanitizers and disposable masks all over the venue.
      • We will be able to take the temperature and arrange for medical assistance if needed.
    • Will there be mandatory masking at the conference?
      No. But you can take free masks at the registration desk if you wish.

    FAQ

    • Where will the offline day of the conference be held?
      Offline-day will be held on June 26 at the following address: Park Inn by Radisson Pulkovskaya: Pobedy Square 1, Saint-Petersburg, Russian Federation.
    • When will the program and time for the offline day of the conference be known?
      We will publish the program on the conference website starting in the second half of April.
    • What activities will be included on the offline day of the conference?

      The offline conference will include:

      • Talks of the main program
      • Roundtables on current topics
      • BoF-sessions
      • Discussions with offline and online speakers who will come to the venue
    • Will there be an online broadcast of the offline day of the conference?

      We will broadcast live most of the activities of the offline day: talks, roundtables, etc.

      Discussions will not be broadcast or recorded.

    • Offline was so long ago that I no longer remember what the procedure was for offline conferences.
      Don’t worry, before the conference we will send you a participant’s memo. It will contain all the necessary information.
    • What is included in the Online+Offline ticket?
      The Online+Offline ticket includes access to all conference broadcasts, unlimited access to video recordings of the activities, and in-person attendance at the Offline Day.
    • Can I buy a ticket only for the offline day of the conference?
      To attend the offline day, there are two options: buy an Online+Offline ticket or buy a Video+Offline ticket after the conference.
    • How do I get to the offline day if I have an Online ticket?
      If you already have a ticket for the online part of the conference, you can upgrade it to "Online+Offline". To do so, email our support team at support@hydraconf.com
    • How do I get to the offline day if the company only paid for my Online ticket?
      If the company that paid for your ticket is not willing to upgrade to Offline, you can do it yourself at a discount. The discount is given for taking the survey after the online part of the conference ends.
    • Is there a limit to the number of tickets for the offline day?

      The number of tickets is limited to the capacity of the conference venue.

      So it is better to buy tickets in advance while they are available.

    • Are there any restrictions on going to an offline conference?

      You need a valid QR code or a negative PCR test:

      • If you have a European vaccination document, it should clearly state the expiration date of the QR code.
      • The negative PCR test must have been done no earlier than 48 hours before registration.

      If neither is available, we will make you a rapid test right by the entrance.
      NB: The number of tests is limited.

    • And if restrictions are tightened again, what will happen to the conference?
      Unfortunately, the offline conference will have to be canceled. In this case, we will promptly make a refund.