<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: В ночных сборках Rust расширены возможности распараллеливания компиляции</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html</link>
    <description>Во фронтэнде компилятора Rust, выполняющем такие задачи, как синтаксический анализ, проверка типов и анализ заимствований, реализована поддержка параллельного выполнения, позволяющего существенно сократить время компиляции. Распараллеливание уже доступно в ночных сборках Rust и включается при помощи опции &quot;-Z threads=8&quot;. В стабильную ветку рассматриваемую возможность планируют включить в 2024 году...&lt;br&gt;&lt;br&gt;Подробнее: https://www.opennet.ru/opennews/art.shtml?num=60095&lt;br&gt;</description>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#101</link>
    <pubDate>Tue, 14 Nov 2023 23:31:34 GMT</pubDate>
    <description>Опять. Вот опять приводишь пример в котором полный вызов функции.&lt;br&gt;&lt;br&gt;И? Опять показал проблемы раста.&lt;br&gt;&lt;br&gt;В очередной раз показывая на .вно говоришь, что это съедобно.&lt;br&gt;&lt;br&gt;Вот реально сказочный Ваня или просто изображаешь?&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#100</link>
    <pubDate>Tue, 14 Nov 2023 19:26:00 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Забавно, пошли очередные &quot;это не считаица &lt;br&gt;&amp;gt; Изначально речь и шла про невозможность одним кодом разные структуры обрабатывать. Что &lt;br&gt;&amp;gt; ты из раза в раз и подтверждаешь примерами, &lt;br&gt;&lt;br&gt;Изначально речь шла о &quot;И да, как раз с этим у раста большие проблемы. Из-за заточенности на безопасности условная компиляция сложна в реализации. &quot;, остальное - уже фантазии Военов. &lt;br&gt;&amp;gt; где сплошное дублирование. &lt;br&gt;&lt;br&gt;Вызов WinAPI на венде - дублирование open на nix, так и запишемю &lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&amp;gt; Где хот отдаленно похожее на это: &lt;br&gt;&amp;gt; https://codebrowser.dev/glibc/glibc/libio/iofopen.c.html &lt;br&gt;&amp;gt; Не говоря уже об этом: &lt;br&gt;&amp;gt; https://codebrowser.dev/glibc/glibc/nss/getXXbyYY.c.html &lt;br&gt;&lt;br&gt;Какой &quot;отличный&quot; пример &quot;кросплатформы&quot; - линух-онли либа.&lt;br&gt;&lt;br&gt;&amp;gt; Вот просто такое: &lt;br&gt;&amp;gt; &#091;code&#093; &lt;br&gt;&amp;gt; #ifdef _IO_MTSAFE_IO &lt;br&gt;&amp;gt;   new_f-&amp;gt;fp.file._lock = &amp;new_f-&amp;gt;lock; &lt;br&gt;&amp;gt; #endif &lt;br&gt;&amp;gt; &#091;/code&#093; &lt;br&gt;&lt;br&gt;&#091;CODE&#093;&lt;br&gt;#&#091;cfg(any(&lt;br&gt;        target_os = &quot;freebsd&quot;,&lt;br&gt;        target_os = &quot;openbsd&quot;,&lt;br&gt;        target_os = &quot;netbsd&quot;,&lt;br&gt;        target_os = &quot;dragonfly&quot;&lt;br&gt;    ))&#093;&lt;br&gt;    pub fn ino(</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#99</link>
    <pubDate>Tue, 14 Nov 2023 08:22:23 GMT</pubDate>
    <description>&amp;gt; Забавно, пошли очередные &quot;это не считаица&lt;br&gt;&lt;br&gt;Изначально речь и шла про невозможность одним кодом разные структуры обрабатывать. Что ты из раза в раз и подтверждаешь примерами, где сплошное дублирование.&lt;br&gt;&lt;br&gt;Где хот отдаленно похожее на это:&lt;br&gt;&lt;br&gt;https://codebrowser.dev/glibc/glibc/libio/iofopen.c.html&lt;br&gt;&lt;br&gt;Не говоря уже об этом:&lt;br&gt;&lt;br&gt;https://codebrowser.dev/glibc/glibc/nss/getXXbyYY.c.html&lt;br&gt;&lt;br&gt;Вот просто такое:&lt;br&gt;&lt;br&gt;&#091;code&#093;&lt;br&gt;&lt;br&gt;#ifdef _IO_MTSAFE_IO&lt;br&gt;  new_f-&amp;gt;fp.file._lock = &amp;new_f-&amp;gt;lock;&lt;br&gt;#endif&lt;br&gt;&lt;br&gt;&#091;/code&#093;&lt;br&gt;&lt;br&gt;?&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (burjui)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#98</link>
    <pubDate>Mon, 13 Nov 2023 20:03:40 GMT</pubDate>
    <description>На целых 2&#037;. Возможно, ты слышал о таком понятии, как &quot;компромисс&quot;. Это такая штука, которую приходится реализовывать примерно в 95&#037; решаемых задач в реальном мире.&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (burjui)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#97</link>
    <pubDate>Mon, 13 Nov 2023 19:59:33 GMT</pubDate>
    <description>Интересен другой вопрос: а как так получилось, что лучшие разработчики на планете собрались на этом ресурсе и разучились читать?&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (burjui)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#96</link>
    <pubDate>Mon, 13 Nov 2023 19:57:59 GMT</pubDate>
    <description>Параллельная компиляция в rustc есть уже давно (этап генерации кода), просто сейчас дело дошло до распараллеливания фронтенда. Очевидно, проблемы решаются по мере возникновения и по важности. А как с параллельной компиляцией обстоят дела у других компиляторов, позвольте узнать?&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#95</link>
    <pubDate>Mon, 13 Nov 2023 18:53:22 GMT</pubDate>
    <description>&amp;gt; Забавно. Так где разные структуры то? Где один код обрабатывающий разные структуры? &lt;br&gt;&lt;br&gt;Забавно, пошли очередные &quot;это не считаица, это тоже, а покажи мне диво-дивное, чудо-чудное ...&quot;&lt;br&gt;В реализацию stdlib смотреть не пробовали?&lt;br&gt;https://doc.rust-lang.org/src/std/fs.rs.html#362-364&lt;br&gt;&#091;CODE&#093;&lt;br&gt; pub fn open&amp;lt;P: AsRef&amp;lt;Path&amp;gt;&amp;gt;(&amp;self, path: P) -&amp;gt; io::Result&amp;lt;File&amp;gt; &#123;&lt;br&gt;        self._open(path.as_ref())&lt;br&gt;    &#125;&lt;br&gt;&lt;br&gt;    fn _open(&amp;self, path: &amp;Path) -&amp;gt; io::Result&amp;lt;File&amp;gt; &#123;&lt;br&gt;        fs_imp::File::open(path, &amp;self.0).map(&amp;#124;inner&amp;#124; File &#123; inner &#125;)&lt;br&gt;    &#125;&lt;br&gt;&#091;/CODE&#093;&lt;br&gt;Правда, совсем не обязательно делать удаление гланд автогеном через одно место:&lt;br&gt;&lt;br&gt;&#091;CODE&#093;&lt;br&gt;pub fn open&amp;lt;P: AsRef&amp;lt;Path&amp;gt;&amp;gt;(path: P) -&amp;gt; io::Result&amp;lt;File&amp;gt; &#123;&lt;br&gt;        OpenOptions::new().read(true).open(path.as_ref())&lt;br&gt;    &#125;&lt;br&gt;&#091;/CODE&#093;&lt;br&gt;Там ведь под капотом не только лишь &quot;вызовы нашей либц!&quot;&lt;br&gt;&lt;br&gt;&#091;CODE&#093;&lt;br&gt;impl File &#123;&lt;br&gt;    pub fn open(path: &amp;Path, opts: &amp;OpenOptions) -&amp;gt; io::Result&amp;lt;File&amp;gt; &#123;&lt;br&gt;        let path = maybe_verbatim(path)?;&lt;br&gt;        let handle = unsafe &#123;&lt;br&gt;            c:</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#94</link>
    <pubDate>Mon, 13 Nov 2023 18:16:05 GMT</pubDate>
    <description>Забавно. Так где разные структуры то? Где один код обрабатывающий разные структуры?&lt;br&gt;&lt;br&gt;То что ты приводишь, это лишь малая необходимая часть для легкого переноса кода на разные платформы. Очень малая и сильно недостаточная.&lt;br&gt;</description>
</item>

<item>
    <title>В ночных сборках Rust расширены возможности распараллеливани... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/132042.html#93</link>
    <pubDate>Mon, 13 Nov 2023 17:49:14 GMT</pubDate>
    <description>&amp;gt; Так где там разные структуры?&lt;br&gt;&lt;br&gt;Папа, где море? (c)&lt;br&gt;&lt;br&gt;&amp;gt; Вызов системного вызова по номеру и передача параметров им. Без интерпретации содержимого. &lt;br&gt;&lt;br&gt;Сам что-то придумал, сам потребовал опровергнуть ... истинный Воен!&lt;br&gt;&lt;br&gt;&amp;gt; Где сами системные вызовы разные на разных платформах?&lt;br&gt;&lt;br&gt;&#091;CODE&#093;&lt;br&gt;pub unsafe fn syscall2(n: Sysno, arg1: usize, arg2: usize) -&amp;gt; usize &#123;&lt;br&gt;    let mut ret: usize;&lt;br&gt;    asm!(&lt;br&gt;        &quot;syscall&quot;,&lt;br&gt;        inlateout(&quot;rax&quot;) n as usize =&amp;gt; ret,&lt;br&gt;        in(&quot;rdi&quot;) arg1,&lt;br&gt;        in(&quot;rsi&quot;) arg2,&lt;br&gt;        out(&quot;rcx&quot;) _, // rcx is used to store old rip&lt;br&gt;        out(&quot;r11&quot;) _, // r11 is used to store old rflags&lt;br&gt;        options(nostack, preserves_flags)&lt;br&gt;    );&lt;br&gt;    ret&lt;br&gt;&#125;&lt;br&gt;...&lt;br&gt;pub unsafe fn syscall2(n: Sysno, arg1: usize, arg2: usize) -&amp;gt; usize &#123;&lt;br&gt;    let mut ret: usize;&lt;br&gt;    asm!(&lt;br&gt;        &quot;svc 0&quot;,&lt;br&gt;        in(&quot;r7&quot;) n as usize,&lt;br&gt;        inlateout(&quot;r0&quot;) arg1 =&amp;gt; ret,&lt;br&gt;        in(&quot;r1&quot;) arg2,&lt;br&gt;        options(nostack, preserves_flags)&lt;br&gt;    );&lt;br&gt;    ret&lt;br&gt;&#125;&lt;br&gt;...&lt;br&gt;pub unsafe fn syscall2(n: Sysno, arg1: usize,</description>
</item>

</channel>
</rss>
