Re[3]: Об эффективности - с другой стороны
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.11.05 13:16
Оценка:
Здравствуйте, eao197, Вы писали:

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


Твой фрэймворк максиму что может сделать — это немного упростить вызовы имеющегося АПИ ОС. Этого явно не достаточно чтобы сделать создание эффективных многопоточных приложений настолько простым, чтобы массы программистов не относящихся к гуру могли быстро создавать масштабируемые приложения.

Думаю, когда mrozov говорил о многопоточном будущем, то имел в виду нечто большее чем просто фрэймворки. Речь скорее всего шла о некоторых механизма автоматизации процесса распараллеливания и существенном снижении сложности создания высокопаралельных программ.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Об эффективности - с другой стороны
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.11.05 13:16
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Я бы не хотел, чтобы дискуссия, если она развернется, вылилась в очередное выяснение .Net против классики, C++ против C# и т.д. Я хотел бы другое обсудить — соответствие ресурсов и задач.


Тогда зачем нужно было в своем тематическом сообщении помещать свои предрассудки на тему дотнета? Глядишь не сделай ты это и разговор мог бы пойти совсем в другм русли.

mrozov прав. Тебе лучше, по крайней мерее пока, не высказываться о дотнете и темболее о его производительности. Для этго тебе неплохо было бы по глубже разобраться в вопросе.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 13:17
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Здравствуйте, Pavel Dvorkin, Вы писали:


PD>>Мой ответ — Pentium-100 32 Mb. Ну в крайнем случае раза в 2 лучше

GZ>Мало иметь 100Мб информации, нужно еще ею эффективно управлять. Это уже СУБД. А теперь представим какой объем должен кэшироваться в памяти чтобы диск не стал узким и жестко ограничивающим средством. Мы можем задумываться больше о той полезной функциональности которую мы можем реализовать. Лет 10 назад, это стоило бы значительно дороже.

Дороже — бесспорно. Но, положа руку на сердце — для этого действительно надо 3Ghz — 512 Мб ? СУБД — да, только сколько информации в этой СУБД будет для этой фирмы ? Десятки Мб, максимум. А насчет управлять — зайди на сайт небольшой компьютерной фирмы, турфирмы и т.д.- много там этого управления ?

PD>>Доказательство — 10 лет назад такие сайты были, если не у нас, то в США, и работали они на такой технике. И оперировали они тем же объемом информации, просто потому, что никакой принципиально новой информации у фирмы, торгующей ,к примеру, компьютерами, просто не появилось. Изменился ассортимент, вот и все.

GZ>20 лет назад, если бы у нас была задача организовать сайт с такой-же нагрузкой как у RSDN — то нам бы пришлось купить компьютер размером с хорошую комнату и такой производительности, что вся бы страна гордилась. А чтобы написать аналогичный софт, нужно было-бы потратить огромнейшую кучу времени, нанять огромнейшее количество программистов, и заплатить несколько миллионов.

Э нет, не о том речь. Ты бы еще про rambler.ru или microsoft.com сказал. С ними — согласен. А вот в рамках той задачи, о которой я писал ? На rsdn уж никак не 100 сессий в день...

PD>>А кстати, какой клиент это все потянет ? Netscape 3.0 на 16 Мб под Windows 95 потянет ? Тянул же он раньше...

GZ>Было уже такое. Вся нагрузка на сервер, рабочая станция — один монитор, да связь с сервером. Но количество задач решаемый сейчас пользователем значительно больше.

Я же не спорю. Для круга задач — да. А вот для большого круга задач же — нет.

GZ>Это компьютер адаптированный для выполнения конкретно-поставленной задачи. Это вполне нормально и никакого противоречия я не вижу. Он не такой же как обычный, он другой. Для него требования другие.


А какой процент таких "других" задач ? Если вспомнить то, с чего я начал (цитата из постинга), то "И не только у меня, а у подавляющего большинства здесь присутствующих," Это не мои слова.


PD>>А сложность задач в 50 раз отнюдь не увеличилась. Для той торговой фирты, с которой я начал, она и не могла увеличиться в 50 раз — просто потому, что нет у нее задач такой сложности. И не предвидится.

GZ>Усложнились не задачи которые решаются торговой фирмой. Усложнились задачи выполняемые с помощью компьютера. И именно благодаря развитию железа и софта.

С помощью компьютера можно самые разные задачи решать, не об этом речь. А вот все же как с задачей организации сайта для вышеупомянутой фирмы ?


PD>>2. Рост мощностей замедлится. В этом случае для тех задач, для которых и ныненшняя мощность избыточна, все останется как сейчас. Но понемногу будут подтягиваться задачи, которые пока что или вообще не решаются (может быть, даже само их существование пока не осознано, так что их и не ставят), или же решаются с трудом, так как имеющиеся способы их решения вынуждены были ориентироваться на имеющиеся мощности (игры — классический пример). Доля этих задач будет возрастать, что приведет к возврату требований по эффективности написания кода.

GZ>Это сказка. Пути назад уже нет.

Кто знает...

GZ>Вообще ты все время упускаешь следующую вещь. То что сейчас делает один программист, раньше стоило несколько миллионов зеленых. Мы вкатились в систему компонентов и библиотек. Я уже не должен отслеживать обратный ход луча на мониторе. Мы теперь используем более функциональные компоненты как кирпичи. И основное торможение в программах дают именно эти компоненты. Они многое могут, они сильно нам помогают, но именно они и являются тормозом производительности. Но развитие железа опережает развитие компонентов. Поэтому мы можем меньше думать о них, и больше думать о том, что мы хотим сделать. Кто может сказать что лет 15 назад он в одиночку написал бы сервер приложений?


Все это очень хорошо. Но ты тоже не хочешь принять один момент. А именно, если задача будет такова, что для нее ресурсов не хватит, то все эти рассуждения стоить будут немного. Делать надо, а как — неважно, если одно не позволяет — другое будет.

GZ>Вобщем, перевод требований по эффективности кода это процесс не искуственный, это процесс эволюционный.


+1
With best regards
Pavel Dvorkin
Re: Об эффективности - с другой стороны
От: ZevS Россия  
Дата: 17.11.05 13:23
Оценка: 30 (2) +4
Здравствуйте, Pavel Dvorkin, Вы писали:

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

Вот если надо написать программку для сотрудников очень большой организации в которой уже есть >500 стареньких компов, то дешевле будет написать программку маленькой и быстрой, но долго, чем заменить весь парк.
Re[4]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 13:24
Оценка: -1
Здравствуйте, mrozov, Вы писали:

M>Здравствуйте, Pavel Dvorkin, Вы писали:


PD>>А вообще мои замечания — не о .Net вовсе, а о соответствии ресурсов задачам.


M>Да ну?


M>"Похоже, авторы .Net именно на это и рассчитывают — система явно сделана "на вырост"."

M>Не про .net? Явно!?

Ну и что ?

M>"Сервер на ASP.NET — это новый русский, отгрохавший себе особняк на 20 комнат и не знающий, что теперь с ними делать" Не про .net? Asp.Net у нас теперь стал дико неэффективным web-сервером? С каких пор???


Я этого как раз и не говорил. А под словами "не знающий, что теперь с ними делать" имелось в виду, что он имеет долстаточно ресурсов, на которых может вольготно расположиться.

M>"можно позволить и 2-3 кратную потерю эффективности в той же .Net " Это тоже не про .net? Какую-какую потерю эффективности? Доказательства голословных обвинений в студию!


Я уже не раз сравнения производительности проводил. См. топики здесь и в .net.

M>И настольные .net приложения у нас теперь не пользуются популярностью, оказывается, из-за проблем с производительностью. Ага.


http://www.rsdn.ru/poll/1275.aspx
Автор: Pavel Dvorkin
Дата: 12.10.05
Вопрос: Сколько профессионально сделанных программ для .net имеется на Вашем компьютере ? (Pavel Dvorkin)
(Повтор голосования #937 спустя год)


Сколько профессионально сделанных программ для .net имеется на Вашем компьютере ? (Pavel Dvorkin)
(Повтор голосования #937 спустя год) (Pavel Dvorkin)
Ни одной 52 36,36%
Не больше 3 66 46,15%
Не больше 5 16 11,19%
Не больше 10 6 4,20%
Больше 10 3 2,10%

О причинах я могу только судить, а вот результаты...
With best regards
Pavel Dvorkin
Re[2]: Об эффективности - с другой стороны
От: Mamut Швеция http://dmitriid.com
Дата: 17.11.05 13:33
Оценка: +2
NC>Более того, смею утверждать, что больщинство пользовательских пк имеют то же распределение загрузки:
NC>1 активное(рабочее приложение, это может быть редактор игра и т.п.) + Музыка(возможно) + 2-5 приложений в фоне. И где же ваша драка за ресурсы??? Видел проблемы только на старых компах(пень 100 192 Mb Ram)

Памяти не хватает дико:

На фоне (трей): Miranda, Shareaza, SharpReader, Winamp, RSDN@Home, PuntoSwitcher, Avast Antivirus, MSN Messenger, SystemScheduler, Apache, AC sound Manager, Process Explorer.

Открытые окна: 2-3 Windows Explorer, Opera (штук десять табов), Mozilla Firefox (штук пять табов).
Часто открываемые: Adobe Photoshop, Macromedia Dreamweaver.

512 MB на все это добро не хватает никак. Только винда жрет 100. Opera+FireFox+Janus — еще сто (Опера у меня нередко сам доходит до 80 МБ). MSN Messenger — 30 метров (за что? зачем?) В общем, сейчас у меня запито 528 метров (из 512). А если еще Фотошоп с Дримуивером запустить....

Вчера под вечер сидел на 800 МБ (из 512 )

Но! Есть конечно но. Если работать только с одним/двумя приложениями, то рекция этих приложений более, чем адекватная.
... << RSDN@Home 1.2.0 alpha rev. 619>>


dmitriid.comGitHubLinkedIn
Re[2]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 13:39
Оценка:
Здравствуйте, Nickolay Ch, Вы писали:

NC>То, что на сервере может крутиться несколько сайтов(частое явление), или же это вообще может быть выделенный виртуальный сервер, каких несколько на одном физическом, Вы конечно не учли почемуто.


Почему не учел. И такое возможно, и, наоборот, сервер, который в действительности на десятках машин расположен (интересно, сколько их у МС на msdn.microsoft.com ?) тоже возможно. Я про частный случай говорил — есть организация, у нее сервер, второй ей не нужен.

NC>На настольной машине одновременно работают 3,5,7 — 10 максимум пользовтаельских приложений. А "активно"(т.е. жрут память и проц) 1-2. Не верим — давайте считать(приведу свой пример, буду рад если то же напишут другие о себе):


<skipped>

Ну примерно то же самое, список несколько иной. Да, 5-10

IExplore 31 Мб
svchost 21
expolrer 18
skype 18
devenv 18

остальные порядка 10 и менее. Всего сейчас commit charge 282 Мв. Правда, VS я специально сейчас запустил, так что при активной работе будет побольше.



NC>Более того, смею утверждать, что больщинство пользовательских пк имеют то же распределение загрузки:

NC>1 активное(рабочее приложение, это может быть редактор игра и т.п.) + Музыка(возможно) + 2-5 приложений в фоне. И где же ваша драка за ресурсы???

Таки есть. Не у меня, у меня 768 Мб. А вот при том же наборе программ и 256 Мб уже напряг будет. Даже если исключить VS — она там ни к чему.

NC>Вообще хочу Вам задать вопрос: из чего появляется задача минимизации мощности обордудования для заданного программного продукта.


Еще раз — нет такой задачи. А есть вопрос, который я уже задал. Повторяю его и здесь

Вопрос — как соотносятся задачи и ресурсы. Если ресурсов на порядок больше — слава богу. Но что это значит — не будет таких задач в массовом масштабе, которые требовали бы этих ресурсов (т.е. обществу такие задачи в массовом масшатабе не нужны просто) или же рост ресурсов был настолько быстрым, что общество за ним не успело и задачи эти еще не сформулировало ?
With best regards
Pavel Dvorkin
Re: Об эффективности - с другой стороны
От: Glоbus Украина  
Дата: 17.11.05 13:41
Оценка: 95 (9) +7 -1 :))) :))
Здравствуйте, Pavel Dvorkin, Вы писали:

<skipped>

PD>1. Рост мощностей продолжится прежними темпами. В этом случае и для многих других задач станет возможным пренебречь эффективностью. Возможно, это коснется и настольных приложений. Похоже, авторы .Net именно на это и рассчитывают — система явно сделана "на вырост".

PD>2. Рост мощностей замедлится. В этом случае для тех задач, для которых и ныненшняя мощность избыточна, все останется как сейчас. Но понемногу будут подтягиваться задачи, которые пока что или вообще не решаются (может быть, даже само их существование пока не осознано, так что их и не ставят), или же решаются с трудом, так как имеющиеся способы их решения вынуждены были ориентироваться на имеющиеся мощности (игры — классический пример). Доля этих задач будет возрастать, что приведет к возврату требований по эффективности написания кода.

Думается мне, все намного проще. То, что у нас тут так жестко рулит и продвигается .нет можно легко объяснить теми задачами, которые решаются. Страны экс-СССР, а также всякие Индии и Китаи, шпарят аутсорсинг, в аутсорсинг даются задачи настолько простые и дешевые, что платить за их решение тамошнему девелоперу положенную ставку просто катастрофически невыгодно — все равно что нанимать профессора убирать улицы с соответсвующими зарплатой, научной пенсией и т.п. На мой взгляд, технологии вроде .нета создаются Мс и другими конторами именно с прицелом на такие "слаборазвитые" страны — идея такова, что "белые хозяева" делают для своих "негров" такой инструмент, чтобы "негры" могли решать рутинные задачи за как можно меншую плату и в кратчайшие сроки. Весь хай-тек с его требованиями к эффективности все равно остается привелегией "белых хозяев" — в экс-совке конторы, занимающиеся более-менее наукоемкой деятельнсотью можно по пальцам пересчитать — и в этих конторах рулят вопросы эффективности и все что с ними связано. Остальная же часть — примерно 95% (думаю примерно так) — лопатат сайт за сайтом и "корпоративные приложения" за "корпоративным приложением", бухучет за бухучетом. ДУмаю не ошибусь, если скажу что подтвержеднием моих слов будет резюме первого, кто его пришлет в вашу контору — с веротяностью 0.95 там будет веб и система бухучета для какого-нить предприятия. А вот строчку наподобие "разработка ПО для систем автопилота ТУ-160" будет найти просто таки нереально. Мы — задворки ИТ, нам перепадают крохи, которые смахивает со своего стола жирный западный дядя, и для работы с этими крохами действительно не нужны глубокие знания в алгоритмизации, архитектуре и тому подобном.
Удачи тебе, браток!
Re[2]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 13:49
Оценка:
Здравствуйте, Glоbus, Вы писали:

G>Здравствуйте, Pavel Dvorkin, Вы писали:


<skipped>

Мысль любопытная, но согласиться не могу. Они же этот софт обратно себе получат, не кому-нибудь. Это же не паленый кофе, который можно в дикую страну заслать, там все сожрут, а мы будем у себя хороший кофе попивать... Что-то здесь не то.
With best regards
Pavel Dvorkin
Re[2]: Об эффективности - с другой стороны
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.11.05 13:49
Оценка:
Здравствуйте, ghecko, Вы писали:

G> Скорее всего популярность ASP.NET обясняется тем, что это очень удобная технология разработки для WEB, во всяком случае удобнее ASP. Ну и еще тем, что, по сути ничего другого под Win просто нет


Вообще-то Апач и почти любые другие разработки (например JSP) доступны под Виндовс.

Что до ASP, то это вообще интерпретация и как ее можно сравнивать по скорости с дотнетом я не понимаю. А ведь реальный выбор при веб-разработке как раз и стоит между интерпретаторами и управляемыми средами (Ява и дотнет). Сайт на С++ — это большая редкость и создание оного для нужд отдельной компании идея граничащая с бредом (разве что для разных гуглей с альтавистами она еще хоть как-то поравдана... пока).
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Об эффективности - с другой стороны
От: GlebZ Россия  
Дата: 17.11.05 13:54
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Дороже — бесспорно. Но, положа руку на сердце — для этого действительно надо 3Ghz — 512 Мб ? СУБД — да, только сколько информации в этой СУБД будет для этой фирмы ? Десятки Мб, максимум. А насчет управлять — зайди на сайт небольшой компьютерной фирмы, турфирмы и т.д.- много там этого управления ?

По разному. Одни вкладывают деньги в свое. Другие раскладывают html на бесплатные сайты(в которых уже другие компы). Деньгу все считают. Но internet web-сайты на обычном десктопе — это извращение. Хотя бы по требованиям к надежности.

PD>Э нет, не о том речь. Ты бы еще про rambler.ru или microsoft.com сказал. С ними — согласен. А вот в рамках той задачи, о которой я писал ? На rsdn уж никак не 100 сессий в день...

У меня есть сайты которые иногда поисковые сервера посещают чаще чем пользователи. Есть сайты у которых 3 тысячи пользователей. Engine один и тот же. Так вот, те которые посещаются значительно меньше предпочли это решение потому что оно дешевле чем построение с нуля. Повторю ключевое слово — дешевле.
Так и все остальное. Пользователи (и мы программисты также пользователи) предпочитают готовые решения или компоненты, чем построение специализированных. Потому что так дешевле.

PD>>>А кстати, какой клиент это все потянет ? Netscape 3.0 на 16 Мб под Windows 95 потянет ? Тянул же он раньше...

GZ>>Было уже такое. Вся нагрузка на сервер, рабочая станция — один монитор, да связь с сервером. Но количество задач решаемый сейчас пользователем значительно больше.
PD>Я же не спорю. Для круга задач — да. А вот для большого круга задач же — нет.
GZ>>Это компьютер адаптированный для выполнения конкретно-поставленной задачи. Это вполне нормально и никакого противоречия я не вижу. Он не такой же как обычный, он другой. Для него требования другие.
PD>А какой процент таких "других" задач ? Если вспомнить то, с чего я начал (цитата из постинга), то "И не только у меня, а у подавляющего большинства здесь присутствующих," Это не мои слова.
тут не понял.

GZ>>Усложнились не задачи которые решаются торговой фирмой. Усложнились задачи выполняемые с помощью компьютера. И именно благодаря развитию железа и софта.

PD>С помощью компьютера можно самые разные задачи решать, не об этом речь. А вот все же как с задачей организации сайта для вышеупомянутой фирмы ?
Уже ответил.

PD>Все это очень хорошо. Но ты тоже не хочешь принять один момент. А именно, если задача будет такова, что для нее ресурсов не хватит, то все эти рассуждения стоить будут немного. Делать надо, а как — неважно, если одно не позволяет — другое будет.

Никто и не говорил что нужно писать плохо. Адаптацию под комп пользователя(или предполагаемого пользователя) никто не отменял. Просто изменение приоритетов в изменившихся условиях.

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Об эффективности - с другой стороны
От: Glоbus Украина  
Дата: 17.11.05 14:12
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, Glоbus, Вы писали:


G>>Здравствуйте, Pavel Dvorkin, Вы писали:


PD><skipped>


PD>Мысль любопытная, но согласиться не могу. Они же этот софт обратно себе получат, не кому-нибудь. Это же не паленый кофе, который можно в дикую страну заслать, там все сожрут, а мы будем у себя хороший кофе попивать... Что-то здесь не то.



Значит они считают, что за такие деньги это преемлемое качество. Ну не нужен им на сайте интернет-магазина мегаэффективный поиск по списку товаров с указанием хитрых кретериев — пользователь подождет вместо одной пять секунд, браузер повтыкает ,в результате все спишут на то что вот мол тормозно сетка работает.
Удачи тебе, браток!
Re[4]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 14:17
Оценка:
Здравствуйте, Glоbus, Вы писали:

G>Значит они считают, что за такие деньги это преемлемое качество. Ну не нужен им на сайте интернет-магазина мегаэффективный поиск по списку товаров с указанием хитрых кретериев — пользователь подождет вместо одной пять секунд, браузер повтыкает ,в результате все спишут на то что вот мол тормозно сетка работает.


Спишут-то спишут, но следующий раз клиент к конкуренту пойдет. У которого сайт лучше.

Вот пример, личный. Искал себе турпоездку. Нашел в Рамблере n ссылок, потом по ним пошел. Если где-то не открывалось или там я не мог быстро получить, что меня интересует — закрывал окно без всяких разговоров. Турфирм море...
With best regards
Pavel Dvorkin
Re[3]: Об эффективности - с другой стороны
От: ghecko Россия  
Дата: 17.11.05 14:20
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Вообще-то Апач и почти любые другие разработки (например JSP) доступны под Виндовс.


Доступны. Но смысл применения Apache под Win от меня ускользает. Java?. Ее приемущества перед .NET
опять же мне кажутся сомнительными
Три великие достоинства программиста: лень, нетерпение, надменность... Л. Уолл
Re[4]: Об эффективности - с другой стороны
От: Pavel Dvorkin Россия  
Дата: 17.11.05 14:23
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>По разному. Одни вкладывают деньги в свое. Другие раскладывают html на бесплатные сайты(в которых уже другие компы). Деньгу все считают. Но internet web-сайты на обычном десктопе — это извращение. Хотя бы по требованиям к надежности.


Требования к надежности везде разные. если сайт чисто информационный, ну еще с отсылкой заказа без онлайн покупок, то требования небольшие. Рухнет — перезагрузим страницу.

GZ>У меня есть сайты которые иногда поисковые сервера посещают чаще чем пользователи. Есть сайты у которых 3 тысячи пользователей. Engine один и тот же. Так вот, те которые посещаются значительно меньше предпочли это решение потому что оно дешевле чем построение с нуля. Повторю ключевое слово — дешевле.


Глеб, дискуссия не в ту сторону пошла. Я не спрашиваю, почему они не взяли P100 и почему они то решение выбрали, а не иное. Меня интересует другое — соотношение между ресурсами и задачами. Повторю еще раз то, о чем уже писал.

Если ресурсов на порядок больше — слава богу. Но что это значит — не будет таких задач в массовом масштабе, которые требовали бы этих ресурсов (т.е. обществу такие задачи в массовом масшатабе не нужны просто) или же рост ресурсов был настолько быстрым, что общество за ним не успело и задачи эти еще не сформулировало ?

PD>>А какой процент таких "других" задач ? Если вспомнить то, с чего я начал (цитата из постинга), то "И не только у меня, а у подавляющего большинства здесь присутствующих," Это не мои слова.

GZ>тут не понял.

Я имел в виду, что IT (кажется) отметил, что задач, требующих эффективности, не так уж много. Вот я и хочу понять , что эта ситуация означает. А что дешевле, надежнее и т.д — тема сама по себе интересная, но не об этом сейчас речь.
With best regards
Pavel Dvorkin
Re[2]: Об эффективности - с другой стороны
От: ghecko Россия  
Дата: 17.11.05 14:28
Оценка:
Здравствуйте, Glоbus, Вы писали:

G>Думается мне, все намного проще. То, что у нас тут так жестко рулит и продвигается .нет можно легко объяснить теми задачами, которые решаются. Страны экс-СССР, а также всякие Индии и Китаи, шпарят аутсорсинг, в аутсорсинг даются задачи настолько простые и дешевые, что платить за их решение тамошнему девелоперу положенную ставку просто катастрофически невыгодно — все равно что нанимать профессора убирать улицы с соответсвующими зарплатой, научной пенсией и т.п. На мой взгляд, технологии вроде .нета создаются Мс и другими конторами именно с прицелом на такие "слаборазвитые" страны — идея такова, что "белые хозяева" делают для своих "негров" такой инструмент, чтобы "негры" могли решать рутинные задачи за как можно меншую плату и в кратчайшие сроки. Весь хай-тек с его требованиями к эффективности все равно остается привелегией "белых хозяев" — в экс-совке конторы, занимающиеся более-менее наукоемкой деятельнсотью можно по пальцам пересчитать — и в этих конторах рулят вопросы эффективности и все что с ними связано. Остальная же часть — примерно 95% (думаю примерно так) — лопатат сайт за сайтом и "корпоративные приложения" за "корпоративным приложением", бухучет за бухучетом. ДУмаю не ошибусь, если скажу что подтвержеднием моих слов будет резюме первого, кто его пришлет в вашу контору — с веротяностью 0.95 там будет веб и система бухучета для какого-нить предприятия. А вот строчку наподобие "разработка ПО для систем автопилота ТУ-160" будет найти просто таки нереально. Мы — задворки ИТ, нам перепадают крохи, которые смахивает со своего стола жирный западный дядя, и для работы с этими крохами действительно не нужны глубокие знания в алгоритмизации, архитектуре и тому подобном.


Можно подумать на С/C++ ты будешь писать здесь что-то другое? Спрос порождает предложение, и копать яму камертоном, в то время когда рядом стоит лопата, только потому что тебе хотелось бы настраивать рояли, ИМХО, глупость
Три великие достоинства программиста: лень, нетерпение, надменность... Л. Уолл
Re[4]: Об эффективности - с другой стороны
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 17.11.05 15:46
Оценка:
Здравствуйте, VladD2, Вы писали:

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


VD>Твой фрэймворк максиму что может сделать — это немного упростить вызовы имеющегося АПИ ОС.


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

VD> Этого явно не достаточно чтобы сделать создание эффективных многопоточных приложений настолько простым, чтобы массы программистов не относящихся к гуру могли быстро создавать масштабируемые приложения.


Знаешь Влад, мне кажется, что для сложных задач должны быть сложные инструменты. Создание масштабируемых приложений -- это очень не простая тема. К тому же она сильно зависит от предметной области. Создать сайт, способный поддерживать 10000 подключений одновременно -- это одно, создать систему расчета прогноза погоды -- это совсем другое. Хотя и там и там хорошая масштабироемость является залогом успеха.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[6]: Об эффективности - с другой стороны
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 17.11.05 15:46
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>>>Я бы не хотел, чтобы дискуссия, если она развернется, вылилась в очередное выяснение .Net против классики, C++ против C# и т.д. Я хотел бы другое обсудить — соответствие ресурсов и задач.


E>>Тогда ответь мне на такой вопрос: для какой-то задачи нужна машина класса P-200 и 128Mb памяти. Где ее взять?


PD>Стоп-стоп. Где ее взять — вестимо, на свалке, может быть . И я восе не призываю ее там искать. Мой вопрос не в этом. Вопрос — как соотносятся задачи и ресурсы. Если ресурсов на порядок больше — слава богу. Но что это значит — не будет таких задач в массовом масштабе, которые требовали бы этих ресурсов (т.е. обществу такие задачи в массовом масшатабе не нужны просто) или же рост ресурсов был настолько быстрым, что общество за ним не успело и задачи эти еще не сформулировало ?


Отнюдь. Я как-то, пару лет назад, загорелся такой идеей: поскольку некоторые мои программы были очень нетребовательны к ресурсам, то вместо того, чтобы покупать дорогущие сервера (надежность которых все равно может оставлять желать) лучше прикупить пару-тройку промышленных компьютеров со стабенькими процессорами, но зато надежных. Ага! Тогда промышленный компьютер класса p-200 стоил дороже, чем no-name сервер класса p4. Так что умерла моя идея еще на взлете

А отсюда вывод -- если программе будет предоставлена аппаратная база, заведомо более мощная, чем нужно, то какой смысл тратить время и силы на снижение ресурсоемкости?

Речь шла о server-side системах.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re: Об эффективности - с другой стороны
От: Трурль  
Дата: 17.11.05 15:47
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Мой ответ — Pentium-100 32 Mb. Ну в крайнем случае раза в 2 лучше


Хм, раза в 2 лучше.

For example, it ran the gigabyte TPC-D (an industry standard decision support benchmark) queries and updates on a 200MHZ PC with 64 megabytes of memory an ultrawide SCSI controller and four disk drives many times faster than the best published results at a fraction the cost.

Re: Об эффективности - с другой стороны
От: McSeem2 США http://www.antigrain.com
Дата: 17.11.05 15:51
Оценка: 27 (4) +3 -1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Попробую высказать следующее утверждение


PD>В последнее десятилетие рост мощности компьютеров (ограничусь только объемом RAM и скоростью процессора) был столь большим, что в результате мир IT оказался в редчайшей ситуации — возможности имеющейся техники для многих задач существенно превышают то, что необходимо для этих задач.


На самом деле это всего лишь вопрос личных предпочтений. Лично я люблю решать задачи, которые изначально требуют максимально возможной эффективности. Другие задачи мне не интересны. Ну не интересны и все тут — рутина и тоска зеленая. Что это означает? А то, что тяжело мне в жизни приходится ибо интересных мне задач очень мало. Но они есть (видишь суслика?) и я стараюсь всеми силами "грести их под себя" — такова моя жизненная философия. Я стремлюсь быть уникальным, штучным экземпляром, мне не интересно находиться на уровне рутинщика.

Вот пример. Некий поиск в коллекции (многокритериальный) через прямую имплементацию работает в 10 раз быстрее, чем если задействовать reflection (прямая имплементация — кучерява, через reflection — компактна и изящна). Но этот поиск требуется там, где совершенно несущественно, работает ли он 1 миллисекунду или 10 миллисекунд, поэтому ускорение в 10 раз совершенно не повод что-то там оптимизировать. Мотивом к оптимизации была бы ситуация, если бы решение с reflection работало бы еще в 1000 раз медленнее. То есть, счет в данном случае идет на сотни и тысячи раз, чтобы имело смысл дергаться — таков usecase. То есть, это типичная задача класса O(1) по использованию. Формально алгоритмически она — O(N), но по жизни нет ни малейшей видимой зависимости времени работы от количества данных — значит O(1). Это пример задачи, которая мне ну вообще не интересна — чисто механическая работа, примерно как свинчивать магазинную мебель. Да, мебель при этом — советская, дырки кое-где не просверлены, а те что есть — просверлены на пару миллиметров мимо, в общем, "творчество" заключается в том, чтобы при помощи молотка и такой-то матери все это таки свинтить, а потом еще и попытаться со всей этой х... взлететь. Эффективней нанять "винтильщика", который за умеренную плату выполнит эту работу (аутсорс), тем более, что у него рука набита. Но вот парадокс — грамотных винтильщиков тоже очень мало, в большинстве случаев все надо проверять, докручивать и поддтягивать за ними, иначе рано или поздно что-нибудь да отвалится (полностью не развалится, нет — чисто какая-нибудь мелочь — ручка там разболтается, дно в яшике провалится, ну дело-то житейское). А все почему? А потому, что винтильщику пофиг что там будет с этим комодом через год — у него нет мотивации. Но это уже вне темы.

Пример другой задачи — придумать способ, как генерировать 2 миллиона треугольников в секунду, вместо одного (ну, скажем, из сцены Flash). Разница — всего-навсего вдвое. Но во-первых, эта разница является мега-критичной в силу usecase, во-вторых, это тот тит задач, к которым у меня имеется хроническая наркотическая зависимость. Здесь уже не может быть и речи о том, что "заменил контейнер — ускорил вдвое". Если используется неэффективный контейнер или неэффективная сортировака, то это — халтура по определению, ибо это — самая простая часть задачи по оптимизации. Но еще раз повторю — подобных задач крайне мало и именно поэтому я заинтересован работать над ними с полной выкладкой, поскольку качество становится вопросом моей профессиональной состоятельности.

Таким оброазом, необходимость эффективных решений определяется целиком и полностью их use case. И если задачи, над которыми человек работает, относятся к категории рутинных O(1), значит таков его личный выбор в конечном итоге. Вот и всех делов.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.