@ru_python

Страница 1060 из 9768
IНЖАЛИД DPИЖЕ
18.06.2016
22:28:24
они есть с точки зрения интерфейса

Roman
18.06.2016
22:28:27
вообщем, всё зависит откуда ты смотришь - из ядра или юзерленда.

IНЖАЛИД DPИЖЕ
18.06.2016
22:28:41
POSIX

Google
Uncel
18.06.2016
22:29:02
не завезли в эти ваши линуксы :)

Roman
18.06.2016
22:29:11
они есть с точки зрения интерфейса
ну, вот смотри, есть такой язык golang. там приложение на зависит от glibc

IНЖАЛИД DPИЖЕ
18.06.2016
22:29:12
ну это давний спор

Roman
18.06.2016
22:29:59
потому я и говорю, что зависит от того откуда ты смотришь.

Aragaer
18.06.2016
22:31:05
с точки зрения ядра тред это процесс, а процесс это группа процессов

IНЖАЛИД DPИЖЕ
18.06.2016
22:31:08
я попросил не мешать треды и процессы, так как мы говорили в контексте использования их в питоне и в io

Aragaer
18.06.2016
22:31:46
группа процессов имеет общее адресное пространство

IНЖАЛИД DPИЖЕ
18.06.2016
22:31:49
а потом был вброс на тему того что тредов нет -(

Roman
18.06.2016
22:32:30
группа процессов имеет общее адресное пространство
угу )) и даже неймспейсы - это тоже clone(2)

Aragaer
18.06.2016
22:32:52
плюс для группы процессов есть всякие там общие вещи, типа доставки сигналов на всю группу сразу

и еще где-то должно быть сказано, кто кому должен доставлять SIGCHLD

вобщем целая куча всяких мелочей

Google
Roman
18.06.2016
22:34:57
я попросил не мешать треды и процессы, так как мы говорили в контексте использования их в питоне и в io
возвращаясь в питон, хочу спросить для какого ещё io кроме дисков нужны треды?

IНЖАЛИД DPИЖЕ
18.06.2016
22:35:13
да network io отлично работает через треды

кроме того threading имеет хорошую совместимость между системами и питонами

Roman
18.06.2016
22:36:04
да network io отлично работает через треды
А как же c10k и вот это всё? :)

IНЖАЛИД DPИЖЕ
18.06.2016
22:36:44
ну как раз кейс где у тебя нет 10к конкарренси

я как раз про это

Roman
18.06.2016
22:37:06
ну как раз кейс где у тебя нет 10к конкарренси
а как же оверхед по памяти на стек и прочее?

Aragaer
18.06.2016
22:37:53
для любого блокируемого ио пригодятся треды

пайпы в том числе

IНЖАЛИД DPИЖЕ
18.06.2016
22:38:22
Aragaer
18.06.2016
22:38:38
для любого ио, требующего выдерживание временных интервалов, например опрос купюроприемника, который тупо ресетится, если каждые 200мс не получает пинг

IНЖАЛИД DPИЖЕ
18.06.2016
22:39:09
тут просто спор между user threads и kernel-threads

Aragaer
18.06.2016
22:40:39
а кто-то разрешает вот так вот прямо брать и пользовать kernel threads?

IНЖАЛИД DPИЖЕ
18.06.2016
22:41:08
мде, тут проблемы в терминологии

я имею в виду разница между потоками пользовательского пространства

Roman
18.06.2016
22:41:34
Aragaer
18.06.2016
22:41:34
есть такое слово - lightweight threads

IНЖАЛИД DPИЖЕ
18.06.2016
22:41:38
и в режиме ядра

Aragaer
18.06.2016
22:41:40
видимо они имеются в виду

IНЖАЛИД DPИЖЕ
18.06.2016
22:41:50
в режим ядра имеется в виду pthreads

Google
Aragaer
18.06.2016
22:41:56
а что делать с этим нонблоком, если сообщений тупо нет, а пока их нет ничего делать не надо

блокируемые операции это прекрасно

Aragaer
18.06.2016
22:43:07
не-не, я про то, что внутри ядра есть свои собственные треды, исполняемые в контексте ядра. Они зовутся ядерными. "обычные" выполняются в юзерспейсе. Они просто треды/процессы

IНЖАЛИД DPИЖЕ
18.06.2016
22:43:21
шта

Aragaer
18.06.2016
22:43:35
но есть еще лайтвейт треды, где переключение контекста выполняется в юзерспейсе, а с точки зрения ядра это один единственный процесс

IНЖАЛИД DPИЖЕ
18.06.2016
22:43:48
это user-space треды

Aragaer
18.06.2016
22:43:53
например в stackless python на этом все строится

IНЖАЛИД DPИЖЕ
18.06.2016
22:43:58
лайтвейт - это просто ненужный термин я бы сказал

как и green threads

всё одно и тоже

Aragaer
18.06.2016
22:44:28
https://en.wikipedia.org/wiki/Light-weight_process

IНЖАЛИД DPИЖЕ
18.06.2016
22:44:35
о которых OS вообще не знает

Aragaer
18.06.2016
22:44:50
Kernel threads are handled entirely by the kernel. They need not be associated with a process; a kernel can create them whenever it needs to perform a particular task.

хм, узнал про грин треды. Ну там тоже есть свое отличие

IНЖАЛИД DPИЖЕ
18.06.2016
22:45:45
но если ты делаешь threading в питоне то это и есть kernel threads

Google
IНЖАЛИД DPИЖЕ
18.06.2016
22:46:41
а если ты используешь, прости господи gevent - то это user-space треды

Roman
18.06.2016
22:46:44
вообще, уж вы тогда сразу m:n замахнитесь

IНЖАЛИД DPИЖЕ
18.06.2016
22:47:31
Roman
18.06.2016
22:49:44
чтоита
https://en.wikipedia.org/wiki/Thread_(computing)#Models

Aragaer
18.06.2016
22:50:06
интел же хотел, но к этому времени появилось nptl и все забили

IНЖАЛИД DPИЖЕ
18.06.2016
22:50:11
ага, гибридные треды

о них я знал, но без этого термина -)

Aragaer
18.06.2016
22:51:01
ну ngpt и загнулось

Admin
ERROR: S client not available

Aragaer
18.06.2016
22:51:21
The NGPT project was subsequently abandoned in mid-2003 after merging its best features into NPTL.

Roman
18.06.2016
22:51:26
NGPT

вообщем-то, сейчас везде 1:1

IНЖАЛИД DPИЖЕ
18.06.2016
22:52:01
всмысле

Roman
18.06.2016
22:52:04
даже в солярке когда-то было m:n, потом сделали 1:1

Aragaer
18.06.2016
22:52:07
1:n

IНЖАЛИД DPИЖЕ
18.06.2016
22:52:13
1:n же

Aragaer
18.06.2016
22:52:16
m:n в ngpt планировалось

IНЖАЛИД DPИЖЕ
18.06.2016
22:52:42
или ты про какое "везде"?

Roman
18.06.2016
22:53:11
или ты про какое "везде"?
я про ОС )) solaris/linux/freebsd

Google
IНЖАЛИД DPИЖЕ
18.06.2016
22:53:23
аааа

тогда да

Roman
18.06.2016
22:55:55
IНЖАЛИД DPИЖЕ
18.06.2016
22:56:09
implicity

Roman
18.06.2016
22:56:40
ах... это. ну посмотри на тот же golang.

IНЖАЛИД DPИЖЕ
18.06.2016
22:56:49
да у меня asyncio есть теперь -)

golang уже не нужОн

Roman
18.06.2016
22:57:13
да у меня asyncio есть теперь -)
без uvloop он медленнее gevent.

IНЖАЛИД DPИЖЕ
18.06.2016
22:57:41
без uvloop он медленнее gevent.
скорость выполнения кода - туфта по сравнения с io и бизнесом

не выполнения кода конечно же

но ты понял

Roman
18.06.2016
22:58:07
скорость выполнения кода - туфта по сравнения с io и бизнесом
ну, тут кому что надо. я вот видео в интернеты вещаю.

и мне скорость очень и очень важна.

IНЖАЛИД DPИЖЕ
18.06.2016
22:58:44
ммм, подожди

это конечно моя серая зона

но gevent выигрывает у asyncio в кол-во отрабатываемых событий за квант времени

каким образом видео в интернеты это затрагивает?

(и кстати да, нужно засунуть uvloop таки в проект)

Roman
18.06.2016
23:00:17
но gevent выигрывает у asyncio в кол-во отрабатываемых событий за квант времени
это значит что он сделает больше сисколлов в единицу времени.

и если у тебя хоть какая-то логика есть в fastpath - это тоже скажется.

Sergey
18.06.2016
23:01:38
всем добрый ночер. я вот написал на хабре каммент к очередному посту про ИИ, в надежде заманить кого то в дискуссию, но всем пофиг. https://geektimes.ru/company/dronk/blog/277354/#comment_9372922 поофтопим а?

Страница 1060 из 9768