Design

Implement Threading in a Functional-Decomposition Problem


Challenge

Apply threading to functional-decomposition problems in the Implementation Phase of application development. Functional-decomposition problems are situations where the roles of different threads are defined by having different functionality (as opposed to identical functionality that is applied to different data).

  • Multi-thread apps for Multi-Core
  • How to thread?
  • Design
  • Parallel Computing
  • Two Brains Are Better Than One

    Artificial intelligence (AI) drives gameplay. To maximize your AI’s potential and utilize the entire CPU, this means threading. This article examines how to thread a simple AI and some of the challenges in writing an AI that truly scales to multi-core.
  • Multi-thread apps for Multi-Core
  • Artificial intelligence
  • How to thread?
  • Smoke
  • Design
  • multi-core
  • physics
  • visual computing
  • vcsource_type_techarticle
  • vcsource_os_windows
  • vcsource_platform_desktoplaptop
  • vcsource_domain_graphics
  • vcsource_index
  • vcsource
  • Game Development
  • Graphics
  • Parallel Computing
  • Паттерн "Спецификация" - отделяем условия

    Большинство паттернов проектирования довольно изощренные. Иногда схема, объясняющая, как работает паттерн и для чего он нужен, может занять несколько страниц. Что отличает паттерн "Спецификация", придуманный Мартином Фаулером и Эриком Эвансом, так это его простота. Его и паттерном-то назвать трудно, так, паттерныш какой-то, однако польза от него несомненная. Применить его можно практически в любом приложении.

    Для примера возьмем излюбленный пример системы учета заказов. В системе имеются объекты заказчик (Customer) и заказ (Order).

    Путешествия во времени

    Еще Брукс писал, чем привлекательна профессия программиста. Мы можем с легкостью создавать и изменять целые миры и даже делать то, что невозможно в реальности.

    Как я уже говорил, наша команда разрабатывает финансовое приложение для расчета комиссионных.

    Приложение разрабатывается чуть больше года, и его дизайн и доменная модель постоянно эволюционирует в процессе разработки. Я хочу рассказать про одно из самых серьезных изменений - про версионность.

    Performance Degradation Due to Spin-Wait Loops on Hyper-Threading Technology-Enabled Systems


    Challenge

    Prevent negative performance impacts in application execution due to spin-wait loops on systems that support Hyper-Threading Technology.

    A spin-wait loop is a technique used in multithreaded applications whereby one thread waits for other threads. The wait can be required for protection of a critical section, for barriers, or for other necessary synchronizations. Typically, the structure of a spin-wait loop consists of a loop that compares a synchronization variable with a predefined value as shown in the following sample code:

  • Multi-thread apps for Multi-Core
  • How to thread?
  • Design
  • Parallel Computing
  • Pages

    Subscribe to Design