Анализ и оптимизация на софтуерни приложения

Размер: px
Започни от страница:

Download "Анализ и оптимизация на софтуерни приложения"

Препис

1 Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев

2 Съдържание Конвейерно изпълнение Проблеми при конвейерното изпълнение Структурни опасности Даннови опасности Контролни опасности SIMD Предсказване на преходи и спекулативно изпълнение 2/27

3 Последователно пране 18ч. 19ч. 20ч. 21ч. 22ч. 23ч. Полунощ 30' 40' 20' 30' 40' 20' 30' 40' 20' 30' 40' 20' Пране Сушене Сгъване Ред на задачите Пране Сушене Сгъване Пране Сушене Сгъване Пране Сушене Сгъване Прането отнема 30 мин Сушенето отнема 40 мин Сгъването отнема 20 мин Последователното пране отнема 6 часа за 4 купа дрехи 3/27

4 Конвейерно пране 18ч. 19ч. 20ч. 21ч. 22ч. 23ч. Полунощ 30' 40' 40' 40' 40' 20' Пране Сушене Сгъване Ред на задачите Пране Сушене Сгъване Пране Сушене Сгъване Пране Сушене Сгъване Конвейерно означава задачата да се започва колкото се може по-скоро Конвейерното пране отнема 3.5 часа! 4/27

5 Изводи от конвейерното изпълнение 18ч. 19ч. 20ч. 21ч. 30' 40' 40' 40' 40' 20' Пране Сушене Сгъване Ред на задачите Пране Сушене Сгъване Пране Сушене Сгъване Пране Сушене Сгъване Конвейерното изпълнение не намалява латентността на отделните задачи, а само пропускателната способност на цялото задание Ефективността на конвейера е ограничена от най-бавната операция Множествено задачи се изпълняват едновременно когато използват различни ресурси Възможното ускорение е броя стъпки в конвейера Небалансираните дължини на стъпките намаляват ускорението Времето за напълване на конвейера и времето на изпразване намаляват ускорението Stall при наличие на зависимости 5/27

6 Изпълнение на инструкции Инструкция Цикли Инструкция i Инструкция i+1 Инструкция i+2 Инструкция i+3 Инструкция i+4 6/27

7 Изпълнение на инструкции Инструкция Цикли Инструкция i IF ID EX MEM WB Инструкция i+1 IF ID EX MEM WB Инструкция i+2 Инструкция i+3 Инструкция i+4 IF Instruction Fetch ID Instruction Decode EX Execution MEM Memory Access WB Write Back 7/27

8 Изпълнение на инструкции Инструкция Цикли Инструкция i IF ID EX MEM WB Инструкция i+1 Инструкция i+2 Инструкция i+3 Инструкция i+4 IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF Instruction Fetch ID Instruction Decode EX Execution MEM Memory Access WB Write Back 8/27

9 Ограничения при конвейерното изпълнение Опасностите (hazards) не позволяват следващата инструкция да бъде изпълнена по време на определения й цикъл Структурни опасности (structural hazards) Опити за използване на един и същ хардуер за две различни неща едновременно Даннови опасности (data hazards) Инструкция зависи от резултата на друга инструкция, която е още в конвейера Контролни опасности (control hazards) Причинени са от забавянето между извличането на инструкции и решенията за промени в потока инструкции (control flow) условни и безусловни преходи 9/27

10 Даннови опасности: без зависимост Инструкция 3 не зависи от данните, получени от инструкция 2. В двете инструкции се чете само от данните получени в инструкция A = 3 2. B = A 3. C = А Ако две инструкции не са взаимнозависими от данните си те обикновено могат да бъдат: Изпълнени едновременно Напълно да се застъпват в конвейера Да се изпълняват непоследователно (out-of-order) При настъпване на такава ситуация в конвейера се казва, че имаме четене след четене (RAR), което не е риск 10/27

11 Даннови опасности: истинска зависимост Инструкция 3 зависи от данните, получени от предходната инструкция 1. A = 3 2. B = A 3. C = B Ако две инструкции са взаимнозависими от данните си те не могат да бъдат: Изпълнени едновременно Напълно да се застъпват в конвейера Да се изпълняват непоследователно (out-of-order) При настъпване на такава ситуация в конвейера се казва, че има риск от четене след запис (RAW hazard) 11/27

12 Даннови опасности: анти зависимост Инструкция 3 зависи от инструкция 2 (инстр. 2 трябва да се изпълни преди инстр. 3) 1. B = 3 2. A = B B = 7 Нарича се още зависимост от имената Когато две инструкции използват един и същи регистър или адрес в паметта, но няма поток от данни между тези две инструкции. Има две версии на този тип зависимост При настъпване на такава ситуация в конвейера се казва, че има риск от запис след четене (WAR hazard) 12/27

13 Даннови опасности: изходна зависимост Инструкция 3 зависи от инструкция 1 (инстр. 1 трябва да се изпълни преди инстр. 3) 1. A = 2 * X 2. B = A / 3 3. A = 9 * Y Нарича се още зависимост от имената Когато две инструкции използват един и същи регистър или адрес в паметта, но няма поток от данни между тези две инструкции. Има две версии на този тип зависимост При настъпване на такава ситуация в конвейера се казва, че има риск от запис след запис (WAW hazard) 13/27

14 Зависимост от имената Зависимостта от имената може да се избегне като се смени името в инструкцията, така че да няма конфликт Софтуерно преименуване (на регистри) Прави се от компилатора Хардуерно преименуване (на регистри) Прави се от процесора. Недостатък: по време на изпълнение 1. B = 3 2. A = B B = 7 1. B = 3 2. B2 = B 3. A = B B = 7 1. A = 2 * X 2. B = A / 3 3. A = 9 * Y 1. A2 = 2 * X 2. B = A2 /3 3. A = 9 * Y WAR опасност WAW опасност 14/27

15 Контролни опасности Всяка инструкция е зависима от някакво множество преходи. Тези зависимости трябва да се спазват, за да може да се запази семантиката на програмата if c1 { I1; } if c2 { I2; } I1 зависи от условието c1, a I2 зависи от условието c2, но не и от c1. 15/27

16 Контролни опасности Избягването на тези конфликти е трудно. Единственият начин е да не се спазва последователността от изпълнение. С други думи изпълнение на инструкции, които не би трябвало да се изпълняват и следователно водят до нарушаване на контролните зависимости. Това е приложимо само когато може да се запази семантиката на програмата. Този вид изпълнение се нарича спекулативно изпълнение. 16/27

17 Суперскаларно изпълнение Тип на инструкция Цикли Integer IF ID EX MEM WB Floating point IF ID EX MEM WB Integer IF ID EX MEM WB Floating point IF ID EX MEM WB Integer IF ID EX MEM WB Floating point IF ID EX MEM WB Двоен суперскалар Integer IF ID EX MEM WB Floating point IF ID EX MEM WB Integer IF ID EX MEM WB Floating point IF ID EX MEM WB 17/27

18 Даннови опасности при ILP Локализация на Instruction level parallelism Много инструкции да се изпълняват паралелно Хардуерът/Софтуерът трябва да запази редът на изпълнение на програмите Трябва да се запази редът на изпълнение на инструкциите и да изглежда така че те се изпълняват от последователно и следват сорс кода Важност на данновите зависимости: Отбелязва възможни опасности, а не задължителни проблеми Определя редът, в който резултатите трябва да се калкулират Ограничава отгоре колко паралелизъм може да се използва Крайна цел: използване на паралелизма като се запази последователното изпълнение само когато то има негативен ефект върху изпълнението на програмата 18/27

19 Мултимедийни инструкции SIMD (Single Instruction Multiple Data) Техниката се използва, за да се постигне паралелизъм на ниво данни като при векторните процесори Една от най-новите реализации на SIMD от Интел се нарича SSE 19/27

20 Мултимедийни инструкции Скалар Вектор 20/27

21 Мултимедийни инструкции Пакетиран тип данни Намират се в отделен регистров файл a 3 a 2 a 1 a 0 SIMD a 3 a 2 a 1 a 0 A оп оп оп оп оп b 3 b 2 b 1 b 0 B a 3 оп b 3 a 2 оп b 2 a 1 оп b 1 a 1 оп b 1 Пакетирана операция 21/27

22 Мултимедийни инструкции for(i=0; i< MAX; ++i) c[i] = a[i] + b[i]; SIMD a[3] a[2] a[1] a[0] a b[3] b[2] b[1] b[0] b c[3] c[2] c[1] c[0] 22/27

23 Intel Core Микроархитектура. Суперскаларно изпълнение 3 Load/Store 1 Branch 3 Integer 2 Floating point 5 SSE Reservation station (RS) Port 0 Port 1 Port 2 Port 1 Port 0 Port 1 Port 0 Port 0 Port 1 Port 2 Port 2 Port 0 Port 1 Port 2 VALU0 VALU1 VSHUF VFADD VFMUL FADD FMUL CPU SU1 SU2 BU Store Data Store Add Load Add MMX/SSE Unit Floating-Point Unit Integer Unit Branch Unit Load-Store Unit Vector ALUs Scalar ALUs Memory Access Units 23/27

24 Спекулативно изпълнение Различни механизми за предсказване Постига се по-добра ILP като се преодоляват контролните зависимости чрез спекулиране на резултата от преходите и изпълнява програмата сякаш предсказанията са верни Предсказване на преходи Предсказване на стойности Prefetching Предвиждане на начинът на достъп до паметта 24/27

25 Предсказване на преходи и спекулативно изпълнение Инструкция Инструкция i (преход) Инструкция i+1 Инструкция i+2 Инструкция i+3 Инструкция i+4 1 IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB Преходът е изчислен IF ID EX MEM WB Цикли Инструкция i+5 IF ID EX MEM WB 25/27

26 Предсказване на преходи и спекулативно изпълнение Инструкция Инструкция i (преход) Stall Stall Stall Stall 1 IF ID EX MEM WB Преходът е изчислен Цикли Инструкция i+5 IF ID EX MEM WB 26/27

27 Предсказване на преходи и спекулативно изпълнение Механизмът за предсказване трябва да определи кое от двете разклонения на условието ще се изпълни Съвременните предсказващи системи са 99+% точни Дори могат да предсказват адресите от индиректните преходи Извличат се и се изпълняват спекулативно предсказаните адреси Няма мехурчета в конвейера Когато преходът най-накрая е оценен и адресът е ясен тогава спекулативното изпълнение се потвърждава или отхвърля 27/27

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание Конвейерно изпълнение Проблеми при конвейерното изпълнение Структурни опасности Даннови опасности Контролни опасности

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Какво могат и какво не могат компилаторите Съдържание 1. Оптимизационен континуум 2. Някои известни видове оптимизации 2/49 Оптимизационен

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е векторизация? 2. Примери 3. на цикли 4. Масиви от структури или структури от масиви 5. на при различни

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Производителност 2. Оптимизация 3. Методи за оптимизация 2/18 Защо производителността е важна? Дава възможност

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е паралелизация? 2. Примери 3. Паралелни алгоритми 4. Синхронизация. Критични секции 5. Проблеми при паралелните

Подробно

Структура на програма в C - Част 2 - типове, функции

Структура на програма в C - Част 2 - типове, функции Структура на програма в C Част 2 - типове, функции Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София 10 март 2019 г. И. Георгиев, Х.

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание Фон Нойманова архитектура История на оперативна памет Архитектура на DRAM Памет на много нива Кеш памети Кеш с директна

Подробно

Системи за управление на версии - Работа с git

Системи за управление на версии - Работа с git Системи за управление на версии Работа с git Иван Георгиев, Христо Иванов, Христо Стефанов Tехнологическо училище "Електронни системи", Технически университет, София 28 февруари 2019 г. И. Георгиев, Х.

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев (от гледна точка на производителността) Съдържание 1. Видове транслатори 2.Фази по време на компилация 3. Оптимизационна фаза

Подробно

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА СРЕДИ ЗА ПРОГРАМИРАНЕ ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА Същност на програмното осигуряване За да могат компютрите да разбират описаните на езика за програмиране алгоритми, те трябва да бъдат преведени

Подробно

Microsoft PowerPoint - Model_Dec_2008_17_21

Microsoft PowerPoint - Model_Dec_2008_17_21 Структура. Теория на графите общи понятия. Същност на мрежовите модели. Приложение на мрежови модели при управление на проекти и програми Общи понятия от Теорията на графите, използвани при мрежовите модели

Подробно

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision :

Подробно

Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от п

Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от п Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от пералната машина е, че имат почистване, центрофугиране

Подробно

Microsoft Word - PRMAT sec99.doc

Microsoft Word - PRMAT sec99.doc Лекция 9 9 Изследване на функция Растене, намаляване и екстремуми В тази лекция ще изследваме особеностите на релефа на графиката на дадена функция в зависимост от поведението на нейната производна Основните

Подробно

Slide 1

Slide 1 Въведение в VHDL Паралелни оператори Паралелни оператори Паралелен оператор оператор, който се изпълнява едновременно с другите оператори от този тип. Process - Процес

Подробно

Задача D

Задача D Задача 1. РЕЗУЛТАТ В час по математика Дора Янкова написала на дъската последователно n числа: първо, второ, трето, четвърто и т.н. Първият ученик от първото число извадил второто, прибавил третото, извадил

Подробно

doll Механична кукла Механичните кукли автоматично повтарят предварително зададена последователност от движения. В Япония има традиции в изработката н

doll Механична кукла Механичните кукли автоматично повтарят предварително зададена последователност от движения. В Япония има традиции в изработката н doll Механична кукла Механичните кукли автоматично повтарят предварително зададена последователност от движения. В Япония има традиции в изработката на механични кукли, датиращи от древни времена. Движенията

Подробно

Лекция Многокомпонентен анализ на смеси чрез техните УВ-Вид спектри.. Електронни спектри на смес от вещества. Обикновено UV/Vis спектър на едно вещест

Лекция Многокомпонентен анализ на смеси чрез техните УВ-Вид спектри.. Електронни спектри на смес от вещества. Обикновено UV/Vis спектър на едно вещест Лекция Многокомпонентен анализ на смеси чрез техните УВ-Вид спектри.. Електронни спектри на смес от вещества. Обикновено UV/Vis спектър на едно вещество се измерва в региона от 200 до 900 nm. За коя да

Подробно

Логаритмична регресия

Логаритмична регресия Логаритмична регресия Доц. д-р Ивайло Пенев Кат. Компютърни науки и технологии Функция на хипотезата h θ x = g θ T x = 1 1 + e θt x Функция на цената J θ = 1 σ m i=1 m Cost(h θ x i, y i ), където Cost(h

Подробно

Slide 1

Slide 1 Методи и алгоритми за моделиране, симулация и оптимизация на полупроводникови сензори Венцеслав Шопов E-mail: vkshopov@yahoo.com BG051PO001-3.3.06-0002 Цел на дисертационния труд е да се създаде софтуерна

Подробно

Microsoft Word - 12-Teacher_Getting Loopy BGG.docx

Microsoft Word - 12-Teacher_Getting Loopy BGG.docx СЪЗДАВАНЕ НА ЦИКЛИ Времетраене на урока: 30 минути. Основната продължителност на урока включва само дейностите. Въвеждащите и обобщаващи предложения могат да се използват за задълбочаване на знанията,

Подробно

Проф

Проф Утвърдил:.. / доц. д-р Е. Великова / Утвърден от Факултетен съвет с протокол... /... СОФИЙСКИ УНИВЕРСИТЕТ СВ. КЛИМЕНТ ОХРИДСКИ Факултет по Математика и Информатика Специалност: Компютърни науки М И К 0

Подробно

Kontrolno 5, variant 1

Kontrolno 5, variant 1 N P - П Ъ Л Н И З А Д А Ч И КОНТРОЛНО 5 ПО ДИЗАЙН И АНАЛИЗ НА АЛГОРИТМИ СУ, ФМИ ( ЗА СПЕЦИАЛНОСТ КОМПЮТЪРНИ НАУКИ, 1. ПОТОК; 3 МАЙ 018 Г. ) Задача 1. Разглеждаме задачата за разпознаване LongestCycle:

Подробно

Машинно обучение Лабораторно упражнение 9 Класификация с множество класове. Представяне на невронна мрежа Упражнението демонстрира класификация в множ

Машинно обучение Лабораторно упражнение 9 Класификация с множество класове. Представяне на невронна мрежа Упражнението демонстрира класификация в множ Машинно обучение Лабораторно упражнение 9 Класификация с множество класове. Представяне на невронна мрежа Упражнението демонстрира класификация в множество класове чрез методи логаритмична регресия и невронни

Подробно

Виртуални функции

Виртуални функции Виртуални функции Статично свързване Как компилаторът избира кой метод или коя функция да бъде извикана? Прави се сравнение между формални и фактически параметри и се избира най-точното съвпадение в случай,

Подробно

Проектиране на непрекъснат ПИД - регулатор. Динамичните свойства на системите за автоматично регулиране, при реализация на първия етап от проектиранет

Проектиране на непрекъснат ПИД - регулатор. Динамичните свойства на системите за автоматично регулиране, при реализация на първия етап от проектиранет Проектиране на непрекъснат П - регулатор инамичните свойства на системите за автоматично регулиране, при реализация на първия етап от проектирането им, могат да се окажат незадоволителни по отношение на

Подробно

ЕКСПЛОДИРАЩИ ТОЧКИ ГЛАВА 1 МАШИНИ Добре дошли на борда на нашето приключение. Това е математическо приключение базирано върху една моя история (аз съм

ЕКСПЛОДИРАЩИ ТОЧКИ ГЛАВА 1 МАШИНИ Добре дошли на борда на нашето приключение. Това е математическо приключение базирано върху една моя история (аз съм ЕКСПЛОДИРАЩИ ТОЧКИ ГЛАВА 1 МАШИНИ Добре дошли на борда на нашето приключение. Това е математическо приключение базирано върху една моя история (аз съм Джеймс), която не е истинска. Когато бях дете, аз

Подробно

Пръстени. Разглеждаме непразното множество R, което е затворено относно две бинарни операции събиране и умножение + : R R R : R R R. Казваме, че R е п

Пръстени. Разглеждаме непразното множество R, което е затворено относно две бинарни операции събиране и умножение + : R R R : R R R. Казваме, че R е п Пръстени. Разглеждаме непразното множество R, което е затворено относно две бинарни операции събиране и умножение + : R R R : R R R. Казваме, че R е пръстен, ако са изпълнени аксиомите 1.-4. за абелева

Подробно

Компютърна Графика и Презентации - Графично моделиране

Компютърна Графика и Презентации - Графично моделиране Компютърна Графика и Презентации Графично Моделиране. Генеративна Компютърна Графика гл. ас. д-р А. Пенев Генеративната КГ се занимава с: Построяване на обекти (модели); Генерация на изображение; Преобразуване

Подробно

Microsoft Word - VM22 SEC55.doc

Microsoft Word - VM22 SEC55.doc Лекция 5 5 Диференциални уравнения от първи ред Основни определения Диференциално уравнение се нарича уравнение в което участват известен брой производни на търсената функция В общия случай ( n) диференциалното

Подробно

Microsoft Word - Sem03+04sup_KH_VM2-11.doc

Microsoft Word - Sem03+04sup_KH_VM2-11.doc Връзка между символ на Кронекер (Conece delta i ) и символ на Леви Чивита (Levi-Civita symbol ε i ) Примери от векторния анализ Всички разглеждания се правят за случая на тримерно евклидово пространство

Подробно

Lush Green

Lush Green Класове Какво са класовете? Основен инструмент на ООП Средство за дефиниране на абстрактни типове данни Синтактична конструкция, която позволява логическо групиране на данни и операциите над тях Дефиниция

Подробно

PowerPoint Presentation

PowerPoint Presentation Port Knocking с RouterOS Допълнително ниво на защита за вашата мрежа Добри Бояджиев Опит с MikroTik RouterOS 2008 I -ва MikroTik Академия (УниБИТ) 2014 Основи на MikroTik RouterOS 2016 Инструктор (Train

Подробно

C++

C++ Управляващи оператори в C++ Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 18 30 октомври 2018 г. Трифон Трифонов (УП 18/19) Управляващи оператори в C++ 18 30 октомври

Подробно

СЪДЪРЖАНИЕ

СЪДЪРЖАНИЕ ЕЛЕКТРОНЕН КАСОВ АПАРАТ PERFECT S 01 К Р АТ К А ИН СТ РУК Ц ИЯ ЗА МОНТ АЖ И ЕК СПЛО АТ АЦ ИЯ Пълната инструкция за експлоатация можете да намерите на сайта ни www.daisy.bg ПОСТАВЯНЕ НА ХАРТИЕНА РОЛКА При

Подробно

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА У Ч Е Б Н А П Р О Г Р А М А ЗА ЗАДЪЛЖИТЕЛНА ПРОФЕСИОНАЛНА ПОДГОТОВКА ПО ПРОГРАМИРАНЕ И АЛГОРИТМИЧНИ ЕЗИЦИ ЗА ПРОФЕСИЯ: КОД 482010 ИКОНОМИСТ - ИНФОРМАТИК СПЕЦИАЛНОСТ:

Подробно

Споделяне на анонимни данни с Lenovo Съдържание Споделяне на анонимни данни с Lenovo... 1 Harmony... 1 Lenovo Companion Lenovo Customer Engag

Споделяне на анонимни данни с Lenovo Съдържание Споделяне на анонимни данни с Lenovo... 1 Harmony... 1 Lenovo Companion Lenovo Customer Engag Споделяне на анонимни данни с Lenovo Съдържание Споделяне на анонимни данни с Lenovo... 1 Harmony... 1 Lenovo Companion 3.0... 2 Lenovo Customer Engagement Service... 3 Lenovo Experience Improvement (само

Подробно

Формули за нареждане на Рубик куб

Формули за нареждане на Рубик куб Етап 1 Опознаване на твоят Рубик куб Кубът на Рубик се състои от 26 видими съставни части, разделени в три категории: 8бр. ъглови кубчета (Corner Pieces). Части с три цвята, които се намират на всеки ъгъл

Подробно

Структура на програма в C - Част 7 - масиви, оператор за индексиране, sizeof оператор

Структура на програма в C - Част 7 - масиви, оператор за индексиране, sizeof оператор Структура на програма в C Част 7 - масиви, оператор за индексиране, sizeof оператор Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София

Подробно

Microsoft Word - PMS sec1212.doc

Microsoft Word - PMS sec1212.doc Лекция Екстремуми Квадратични форми Функцията ϕ ( = ( K се нарича квадратична форма на променливите когато има вида ϕ( = aij i j i j= За коефициентите предполагаме че a ij = a ji i j При = имаме ϕ ( =

Подробно

Microsoft PowerPoint - Ppt ppt [Read-Only]

Microsoft PowerPoint - Ppt ppt [Read-Only] ТЕХНИЧЕСКИ УНИВЕРСИТЕТ ВАРНА КАТЕДРА АВТОМАТИЗАЦИЯ НА ПРОИЗВОДСТВОТО ЦИФРОВИ СИСТЕМИ ЗА УПРАВЛЕНИЕ - ЧАСТ 2 Янко Янев ВИДОВЕ ТЕХНОЛОГИИ ЗА ИЗГРАЖДАНЕ НА ЦИФРОВИ СИСТЕМИ ЗА УПРАВЛЕНИЕ микропроцесори микроконтролери

Подробно

Годишното тематично разпределение по Компютърно моделиране за 4. клас N седмица Тема очаквани резултати Методи бележки и коментари Първи учебен срок Т

Годишното тематично разпределение по Компютърно моделиране за 4. клас N седмица Тема очаквани резултати Методи бележки и коментари Първи учебен срок Т Годишното тематично разпределение по Компютърно моделиране за 4. клас N седмица Тема очаквани резултати Методи бележки и коментари Първи учебен срок Тема 1. Информация 1 1 Видове информация Познава начините

Подробно

-

- Лениво оценяване и програмиране от по-висок ред Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 7 януари 2016 г. Трифон Трифонов (ФП-И 15/16) Лениво оценяване 7 януари 2016 г.

Подробно

ВАРНЕНСКИ СВОБОДЕН УНИВЕРСИТЕТ "ЧЕРНОРИЗЕЦ ХРАБЪР" ЗАГЛАВИЕ курсова работа по. на.., специалност. фак. номер: ******** Варна, 2008 г.

ВАРНЕНСКИ СВОБОДЕН УНИВЕРСИТЕТ ЧЕРНОРИЗЕЦ ХРАБЪР ЗАГЛАВИЕ курсова работа по. на.., специалност. фак. номер: ******** Варна, 2008 г. ВАРНЕНСКИ СВОБОДЕН УНИВЕРСИТЕТ "ЧЕРНОРИЗЕЦ ХРАБЪР" ЗАГЛАВИЕ курсова работа по. на.., специалност. фак. номер: ******** Варна, 28 г. 2 Задача Да се изследва влиянието на вноса и износа на върху брутния

Подробно