Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c++ > #79507 > unrolled thread

Niuce C++14-feature

Started byBonita Montero <Bonita.Montero@gmail.com>
First post2021-05-16 18:10 +0200
Last post2021-05-18 15:14 -0700
Articles 20 on this page of 249 — 76 participants

Back to article view | Back to comp.lang.c++


Contents

  Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-16 18:10 +0200
    Re: Niuce C++14-feature Öö Tiib <ootiib@hot.ee> - 2021-05-16 10:54 -0700
      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-16 20:01 +0200
        Re: Niuce C++14-feature Öö Tiib <ootiib@hot.ee> - 2021-05-16 11:29 -0700
          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 08:20 +0200
            Re: Niuce C++14-feature MrSpook_f4zl13qm@8lfoe01ih4ebku.com - 2021-05-17 09:26 +0000
              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 12:52 +0200
                Re: Niuce C++14-feature MrSpook_yMgsa7x5@3ifr32ivepk32ia.org - 2021-05-17 11:29 +0000
                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 13:42 +0200
                    Re: Niuce C++14-feature MrSpook_zSl@bw3y07so7dr3go2x.tv - 2021-05-17 13:31 +0000
            Re: Niuce C++14-feature Öö Tiib <ootiib@hot.ee> - 2021-05-17 19:53 -0700
              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-18 05:39 +0200
                Re: Niuce C++14-feature Öö Tiib <ootiib@hot.ee> - 2021-05-17 22:33 -0700
    Re: Niuce C++14-feature MrSpook_sey@tad.gov.uk - 2021-05-17 07:42 +0000
      Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 10:58 +0000
        Re: Niuce C++14-feature MrSpook_vj8xvznaud@d16tgqd.co.uk - 2021-05-17 11:32 +0000
          Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 12:03 +0000
            Re: Niuce C++14-feature MrSpook_gT9q@x057vr3tuoe9s_ht3c.net - 2021-05-17 13:18 +0000
              Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 14:02 +0000
                Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 16:36 +0000
                Re: Niuce C++14-feature MrSpook_rtfm7b8w@g403t8gw2b59awtit.tv - 2021-05-17 14:54 +0000
        Re: Niuce C++14-feature Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-05-17 10:37 -0700
          Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-18 06:47 +0000
            Re: Niuce C++14-feature MrSpook_w2uom3_k07@47j.ac.uk - 2021-05-18 07:30 +0000
              Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-18 10:31 +0000
                Re: Niuce C++14-feature MrSpook_axe6hb@rq6ypc_knzvwr9.ac.uk - 2021-05-18 15:11 +0000
                Re: Niuce C++14-feature Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-05-18 16:57 -0700
                  Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-19 04:53 +0000
            Re: Niuce C++14-feature Ben Bacarisse <ben.usenet@bsb.me.uk> - 2021-05-18 13:08 +0100
            Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-18 17:10 +0200
            Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-18 11:56 -0400
            Re: Niuce C++14-feature Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-05-18 16:56 -0700
              Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-18 22:05 -0700
                Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-19 12:01 +0000
                  Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-24 10:54 +0000
                    Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-24 14:51 -0400
              Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-19 05:02 +0000
                Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-19 10:07 -0400
                Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-19 15:16 +0200
              Re: Niuce C++14-feature Spud@nowheresville.org - 2021-05-19 07:19 +0000
                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 00:53 -0700
                  Re: Niuce C++14-feature MrSpook_pl1c1bg7i@7sxv4z8mvmyz_.ac.uk - 2021-05-19 08:28 +0000
                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:34 -0700
                      Re: Niuce C++14-feature MrSpook_6efnqt73nm@nyyte.com - 2021-05-19 08:44 +0000
                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:50 -0700
                          Re: Niuce C++14-feature MrSpook_54rouunX@x37ixhgx27ymvhwc5.net - 2021-05-19 09:31 +0000
                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 13:39 -0700
                              Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 13:46 -0700
                              Re: Niuce C++14-feature MrSpook_nkfcgvl@7o616.biz - 2021-05-20 08:23 +0000
                                Re: Niuce C++14-feature Paavo Helde <myfirstname@osa.pri.ee> - 2021-05-20 12:38 +0300
                                  Re: Niuce C++14-feature MrSpook_5Xl@m9q7d5ux5tl8o5.co.uk - 2021-05-20 14:38 +0000
                                    Re: Niuce C++14-feature Mr Flibble <flibble@reddwarf.jmc> - 2021-05-20 17:43 +0000
                                      Re: Niuce C++14-feature MrSpook_dg01t9p2@m0m4iuefk1x.edu - 2021-05-21 09:16 +0000
                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 13:38 +0200
                                          Re: Niuce C++14-feature MrSpook_L1peqs_@c81ltrsr_gfoo1.co.uk - 2021-05-21 13:39 +0000
                                            Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 15:46 +0200
                                              Re: Niuce C++14-feature MrSpook_km@gfepxabk0g_ytn7ta.net - 2021-05-21 14:48 +0000
                                                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 17:03 +0200
                                            Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-21 14:15 +0000
                                              Re: Niuce C++14-feature MrSpook_6f@fypmp_.biz - 2021-05-21 14:57 +0000
                                                Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-21 15:05 +0000
                                              Re: Niuce C++14-feature "daniel...@gmail.com" <danielaparker@gmail.com> - 2021-05-21 09:42 -0700
                                        Re: Niuce C++14-feature Mr Flibble <flibble@reddwarf.jmc> - 2021-05-21 14:44 +0100
                                          Re: Niuce C++14-feature MrSpook_4ptu0Yl4x9@2q77bsgmv.edu - 2021-05-21 14:47 +0000
                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 05:31 +0200
                                      Re: Niuce C++14-feature MrSpook_va6psV1d@w5lywejmkchyss0h4d.gov - 2021-05-21 09:24 +0000
                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 13:33 +0200
                                          Re: Niuce C++14-feature MrSpook_md3@zi2k.com - 2021-05-21 13:32 +0000
                                            Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 15:43 +0200
                                              Re: Niuce C++14-feature MrSpook_zq3a8xxm@t9c1d7aq5dby4al.gov.uk - 2021-05-21 14:44 +0000
                                                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 17:07 +0200
                                                  Re: Niuce C++14-feature MrSpook_hjgci2iT0@qtinm1mgdu.info - 2021-05-21 16:12 +0000
                                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 18:18 +0200
                                                      Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-21 16:25 +0000
                                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-21 18:36 +0200
                                                        Re: Niuce C++14-feature David Brown <david.brown@hesbynett.no> - 2021-05-22 16:18 +0200
                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-22 16:25 +0200
                                                            Re: Niuce C++14-feature Öö Tiib <ootiib@hot.ee> - 2021-05-22 08:44 -0700
                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-22 17:49 +0200
                                                            Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 05:50 +0200
                                                              Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 21:32 -0700
                                                                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 06:40 +0200
                                                                  Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 22:07 -0700
                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 22:08 -0700
                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 07:46 +0200
                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:12 -0700
                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:19 +0200
                                                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:20 -0700
                                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:22 +0200
                                                                                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:27 -0700
                                                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:30 +0200
                                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:32 -0700
                                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:35 +0200
                                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:38 -0700
                                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:41 -0700
                                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:44 +0200
                                                                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:49 -0700
                                                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:50 +0200
                                                                                                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:52 -0700
                                                                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:54 +0200
                                                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:56 -0700
                                                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:59 +0200
                                                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:03 -0700
                                                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:04 +0200
                                                                                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:09 -0700
                                                                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:11 +0200
                                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:34 -0700
                                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:36 +0200
                                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:38 -0700
                                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:39 +0200
                                                                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:43 -0700
                                                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:46 +0200
                                                                                                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:55 -0700
                                                                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:00 +0200
                                                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:02 -0700
                                                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:05 +0200
                                                                                                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:07 -0700
                                                                                                          Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:08 -0700
                                                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:10 +0200
                                                                                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:32 +0200
                                                                                  Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:33 -0700
                                                                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:34 +0200
                                                                                      Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:37 -0700
                                                                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:40 +0200
                                                                                          Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:53 -0700
                                                                                            Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 08:55 +0200
                                                                                              Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:58 -0700
                                                                                                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:01 +0200
                                                                                                  Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:04 -0700
                                                                                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 09:07 +0200
                                                                                                      Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:10 -0700
                                                                                                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-25 00:01 -0700
                                                                                Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 23:30 -0700
                                                            Re: Niuce C++14-feature MrSpook_801o@21xmy7.gov.uk - 2021-05-24 08:31 +0000
                                                              Re: Niuce C++14-feature MrSpook_8_g@ef863gl0.eu - 2021-05-24 08:34 +0000
                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 11:49 +0200
                                                                Re: Niuce C++14-feature MrSpook_9v@0v6uq5zonj66dteaq9.ac.uk - 2021-05-24 10:15 +0000
                                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 12:44 +0200
                                                                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-24 13:33 -0700
                                                        Re: Niuce C++14-feature MrSpook_cjz9@ngfllgqd.edu - 2021-05-25 09:02 +0000
                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 12:54 +0200
                                                        Re: Niuce C++14-feature MrSpook_43zpj5@zrdy.biz - 2021-05-25 09:02 +0000
                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-25 12:53 +0200
                                                        Re: Niuce C++14-feature MrSpook_m0gtwlu6_g@j_cyo9l9.edu - 2021-05-25 09:05 +0000
                                                          Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-25 16:22 +0200
                                                        Re: Niuce C++14-feature MrSpook_wBhaki@w1dhf2q0pnagn57.eu - 2021-05-24 08:26 +0000
                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 11:51 +0200
                                                            Re: Niuce C++14-feature MrSpook_rfg_f9lmv@xechfnrqs23y.com - 2021-05-24 10:17 +0000
                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 12:45 +0200
                                                                Re: Niuce C++14-feature David Brown <david.brown@hesbynett.no> - 2021-05-24 13:42 +0200
                                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 13:54 +0200
                                                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 14:19 +0200
                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 15:02 +0200
                                                                      Re: Niuce C++14-feature MrSpook_1shmhc5pEg@qedprf.biz - 2021-05-24 13:57 +0000
                                                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 18:15 +0200
                                                                    Re: Niuce C++14-feature David Brown <david.brown@hesbynett.no> - 2021-05-24 15:21 +0200
                                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 15:37 +0200
                                                                        Re: Niuce C++14-feature MrSpook_61Z@avwe8ulg.co.uk - 2021-05-24 13:49 +0000
                                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 18:14 +0200
                                                                      Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-24 16:58 +0200
                                                                        Re: Niuce C++14-feature David Brown <david.brown@hesbynett.no> - 2021-05-24 18:51 +0200
                                                      Re: Niuce C++14-feature MrSpook_o_4Ge4wpt@2iwg_s7sq47equu9a.edu - 2021-05-24 08:25 +0000
                                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-24 11:52 +0200
                                                    Re: Niuce C++14-feature Mr Flibble <flibble@reddwarf.jmc> - 2021-05-21 17:19 +0100
                                                      Re: Niuce C++14-feature MrSpook_3l@rsdtj2x7.gov - 2021-05-24 08:22 +0000
                                  Re: Niuce C++14-feature MrSpook_f4@x4dcxggdi.eu - 2021-05-20 13:42 +0000
                                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-20 16:20 +0200
                                  Re: Niuce C++14-feature Branimir Maksimovic <branimir.maksimovic@gmail.com> - 2021-05-20 18:02 +0000
                                    Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-20 19:23 +0000
                                      Re: Niuce C++14-feature Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2021-05-21 00:07 +0100
                                        Re: Niuce C++14-feature MrSpook_db0ucj9V@o6t54wlnnja_.co.uk - 2021-05-21 09:24 +0000
                                      Re: Niuce C++14-feature MrSpook_a102e@wnyqsthof.net - 2021-05-21 09:22 +0000
                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:53 -0700
                          Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:54 -0700
                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 10:30 +0200
                    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:35 -0700
                      Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:36 -0700
                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 01:37 -0700
                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 12:57 +0200
                        Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 13:33 -0700
                Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-19 10:20 -0400
                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 18:13 +0200
                Re: Niuce C++14-feature Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-05-19 10:09 -0700
      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 13:28 +0200
        Re: Niuce C++14-feature MrSpook_97@bxos5xe28b1i1n7kh.ac.uk - 2021-05-17 11:34 +0000
          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 13:41 +0200
            Re: Niuce C++14-feature MrSpook_b89m0or3@x1_pxvs4h8sxxi.gov.uk - 2021-05-17 13:29 +0000
              Re: Niuce C++14-feature MrSpook_imhoou@kq9.ac.uk - 2021-05-17 15:53 +0000
                Re: Niuce C++14-feature MrSpook_qg11H@ihwz2zmflqtcalb.gov.uk - 2021-05-17 16:06 +0000
                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 18:21 +0200
                    Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 16:38 +0000
                Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 17:58 +0200
              Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 14:03 +0000
                Re: Niuce C++14-feature Juha Nieminen <nospam@thanks.invalid> - 2021-05-17 16:37 +0000
                  Re: Niuce C++14-feature MrSpook_7kof@5x9.edu - 2021-05-18 07:27 +0000
                Re: Niuce C++14-feature MrSpook_cOJ9@yr_8g_4nz.com - 2021-05-17 14:55 +0000
              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 16:06 +0200
                Re: Niuce C++14-feature MrSpook_tt7xetn_st@d3zd4ilmme.gov - 2021-05-17 14:56 +0000
                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-17 17:20 +0200
                  Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-18 17:20 +0200
                    Re: Niuce C++14-feature MrSpook_h2j5v@jq7cn18h8lm.com - 2021-05-18 15:35 +0000
                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-18 17:57 +0200
                        Re: Niuce C++14-feature MrSpook_0by_disXi@2hd58e950gxh.eu - 2021-05-19 07:22 +0000
                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 09:41 +0200
                            Re: Niuce C++14-feature MrSpook_ox7@4ieqo8ddusd3k1c8k.com - 2021-05-19 08:22 +0000
                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 10:28 +0200
                                Re: Niuce C++14-feature MrSpook_4t1542s@nz48t.gov - 2021-05-19 08:40 +0000
                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 12:54 +0200
                                    Re: Niuce C++14-feature MrSpook_2ur@t65zb.com - 2021-05-19 11:08 +0000
                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 13:11 +0200
                                        Re: Niuce C++14-feature MrSpook_a9r7@vdgtzl3x.gov.uk - 2021-05-19 11:19 +0000
                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 13:33 +0200
                                            Re: Niuce C++14-feature MrSpook_of0j0vqHff@bap.com - 2021-05-19 13:29 +0000
                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 16:17 +0200
                                                Re: Niuce C++14-feature MrSpook_83b6en@o2cr9.ac.uk - 2021-05-19 14:57 +0000
                                                  Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 17:49 +0200
                                                    Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-19 17:41 +0000
                                                      Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 19:55 +0200
                                                      Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 14:02 -0700
                                                        Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-19 21:06 +0000
                                                          Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 14:12 -0700
                                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 14:13 -0700
                                                      Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-20 12:16 +0200
                                                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-20 12:31 +0200
                                                          Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-20 12:33 +0200
                                                            Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-20 18:37 +0200
                                                            Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-20 13:10 -0400
                                                              Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-20 17:56 +0000
                                                              Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-20 20:26 +0200
                                                                Re: Niuce C++14-feature "james...@alumni.caltech.edu" <jameskuyper@alumni.caltech.edu> - 2021-05-20 19:50 -0700
                                                        Re: Niuce C++14-feature scott@slp53.sl.home (Scott Lurndal) - 2021-05-20 14:35 +0000
                                            Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 13:54 -0700
                                              Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-19 13:58 -0700
                      Re: Niuce C++14-feature David Brown <david.brown@hesbynett.no> - 2021-05-19 11:16 +0200
                        Re: Niuce C++14-feature MrSpook_V1@aikd06tg1ez2i6hqi9.com - 2021-05-19 09:29 +0000
                          Re: Niuce C++14-feature Paavo Helde <myfirstname@osa.pri.ee> - 2021-05-19 13:36 +0300
                            Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 12:56 +0200
                            Re: Niuce C++14-feature MrSpook_w5c@g2nz1m_2f4r2g8wqvgfd.co.uk - 2021-05-19 11:07 +0000
                        Re: Niuce C++14-feature James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-05-19 10:34 -0400
                          Re: Niuce C++14-feature MrSpook_g1@mpi.com - 2021-05-19 14:55 +0000
                            Re: Niuce C++14-feature Mr Flibble <flibble@reddwarf.jmc> - 2021-05-19 16:15 +0000
                              Re: Niuce C++14-feature MrSpook_uc82glu@4o0o4n889yatl8.ac.uk - 2021-05-20 08:19 +0000
                                Re: Niuce C++14-feature Mr Flibble <flibble@reddwarf.jmc> - 2021-05-20 17:46 +0000
                                  Re: Niuce C++14-feature MrSpook_mm9v3kgmmm@7_o9.co.uk - 2021-05-21 09:19 +0000
                    Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-18 17:56 +0200
                      Re: Niuce C++14-feature Manfred <noname@add.invalid> - 2021-05-18 20:03 +0200
                      Re: Niuce C++14-feature MrSpook_fDx9@a3i3cdf7_.info - 2021-05-19 07:27 +0000
                        Re: Niuce C++14-feature Bonita Montero <Bonita.Montero@gmail.com> - 2021-05-19 09:41 +0200
    Re: Niuce C++14-feature "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2021-05-18 15:14 -0700

Page 8 of 13 — ← Prev page 1 … 6 7 [8] 9 10 … 13  Next page →


#79830

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-25 12:54 +0200
Message-ID<s8il1v$5mt$2@dont-email.me>
In reply to#79811
>> If you don't need synchronization you won't need it for fork()ing
>> #and threading as well. Then you simply could fire a thread with
>> thread( func, params ... ).detach() and forget the thread.

> What a pity I can't find some ascii art of someone with their head in their
> hands.

The above is a trivial statement. And you won't have to have any
shared memory, you simply pass the parameters to the thread and
they're destructed when the thread ends. That's magnitudes more
convenient than fork() ing and having shared memory.

[toc] | [prev] | [next] | [standalone]


#79812

FromMrSpook_43zpj5@zrdy.biz
Date2021-05-25 09:02 +0000
Message-ID<s8ief5$1isq$1@gioia.aioe.org>
In reply to#79698
On Mon, 24 May 2021 18:15:31 +0200
Bonita Montero <Bonita.Montero@gmail.com> wrote:
>> So what? Do you ever manage to understand the point for anything? Is it an
>> English comprehension problem?
>
>I've shown that fork()ing is much more slower than to create a thread.
>And even more a lot slower when pages are CoWd.

For the use cases of fork the time of creation is irrelevant.

[toc] | [prev] | [next] | [standalone]


#79828

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-25 12:53 +0200
Message-ID<s8ikul$5mt$1@dont-email.me>
In reply to#79812
>> I've shown that fork()ing is much more slower than to create a thread.
>> And even more a lot slower when pages are CoWd.

> For the use cases of fork the time of creation is irrelevant.

F.e. if you have a webserver that fork()s for every request,
that's relevant as in most other cases.

[toc] | [prev] | [next] | [standalone]


#79813

FromMrSpook_m0gtwlu6_g@j_cyo9l9.edu
Date2021-05-25 09:05 +0000
Message-ID<s8iejs$1l3m$1@gioia.aioe.org>
In reply to#79698
On Mon, 24 May 2021 18:51:58 +0200
David Brown <david.brown@hesbynett.no> wrote:
>On 24/05/2021 16:58, Manfred wrote:
>> However the benefit of a multiprocess design is not only for server code.
>> Even in a single user scenario the design of a complex system with
>> dozens of tasks may very well choose a multiprocess solution especially
>> if system stability is a primary requirement, where you don't want a
>> fault in one function to compromise the whole system.
>> I've seen this happen even under Windows.
>
>A clear example of that last point would be browsers, where forking
>means that plugins, extensions, tabs, etc., can crash without bringing
>down the whole browser.  It costs - especially in ram - but you get
>benefits from it.

Yup. Also some browsers - eg firefox - started out using seperate processes
for seperate tabs but switched over to multithreading - presumably to make
porting to Windows easier - with the consequent drop in reliability. Now
some have gone back to multi process which also has the benefit of making
some kind of javascript hacks difficult if not impossible if each tab is a 
seperate process.

[toc] | [prev] | [next] | [standalone]


#79862

FromManfred <noname@add.invalid>
Date2021-05-25 16:22 +0200
Message-ID<s8j174$17bd$1@gioia.aioe.org>
In reply to#79813
On 5/25/2021 11:05 AM, MrSpook_m0gtwlu6_g@j_cyo9l9.edu wrote:
> On Mon, 24 May 2021 18:51:58 +0200
> David Brown <david.brown@hesbynett.no> wrote:
>> On 24/05/2021 16:58, Manfred wrote:
>>> However the benefit of a multiprocess design is not only for server code.
>>> Even in a single user scenario the design of a complex system with
>>> dozens of tasks may very well choose a multiprocess solution especially
>>> if system stability is a primary requirement, where you don't want a
>>> fault in one function to compromise the whole system.
>>> I've seen this happen even under Windows.
>>
>> A clear example of that last point would be browsers, where forking
>> means that plugins, extensions, tabs, etc., can crash without bringing
>> down the whole browser.  It costs - especially in ram - but you get
>> benefits from it.
> 
> Yup. Also some browsers - eg firefox - started out using seperate processes
> for seperate tabs but switched over to multithreading - presumably to make
> porting to Windows easier - with the consequent drop in reliability. Now
> some have gone back to multi process which also has the benefit of making
> some kind of javascript hacks difficult if not impossible if each tab is a
> seperate process.
> 

The current version of Firefox for Windows starts up with 5 (five!) 
processes, and then adds one more for each tab.

However, what I was referring to above was some product where stability 
was much more critical than a web browser.

[toc] | [prev] | [next] | [standalone]


#79819

FromMrSpook_wBhaki@w1dhf2q0pnagn57.eu
Date2021-05-24 08:26 +0000
Message-ID<s8fnv7$1vmt$1@gioia.aioe.org>
In reply to#79698
On Fri, 21 May 2021 16:25:34 GMT
scott@slp53.sl.home (Scott Lurndal) wrote:
>Bonita Montero <Bonita.Montero@gmail.com> writes:
> <ATTRIBUTION DELETED INTENTIONALLY BY BM>
>>> You don't even know what I'm talking refering to do you? Having threads of
>>> a single application spread over multiple CPUs requires specialist hardware
>>> and can cause serious performance bottlenecks. ...
>>
>>The necessities of synchronization are the _same_ for fork()ing and
>>MT, i.e. you need to share memory at the same places in the code and
>>you need to synchronize also at the same places. But MT is more effi-
>>cient because of the shared address-space - a lot of synchronization
>>then doesn't need any kernel-aid - and easier to write.
>>Your knowledge is very superficial when it comes to parallelization !
>
>You are both arguing past each other.
>
>Both forking and multithreading are useful in the right situation.

Thats all I was saying. But for people who've only ever developed on Windows
all they know is multithreading and see it as the answer to everything.

[toc] | [prev] | [next] | [standalone]


#79854

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 11:51 +0200
Message-ID<s8fsu5$a4g$2@dont-email.me>
In reply to#79819
>> Both forking and multithreading are useful in the right situation.

> Thats all I was saying. But for people who've only ever developed on Windows
> all they know is multithreading and see it as the answer to everything.

But that's wrong. You can deduce that from the fact that almost
no parallel application is implemented using fork()ing today.

[toc] | [prev] | [next] | [standalone]


#79856

FromMrSpook_rfg_f9lmv@xechfnrqs23y.com
Date2021-05-24 10:17 +0000
Message-ID<s8fuf2$173p$1@gioia.aioe.org>
In reply to#79854
On Mon, 24 May 2021 11:51:00 +0200
Bonita Montero <Bonita.Montero@gmail.com> wrote:
>>> Both forking and multithreading are useful in the right situation.
>
>> Thats all I was saying. But for people who've only ever developed on Windows
>> all they know is multithreading and see it as the answer to everything.
>
>But that's wrong. You can deduce that from the fact that almost
>no parallel application is implemented using fork()ing today.

So you keep saying but you've yet to provide anything to back up your
assertion.

[toc] | [prev] | [next] | [standalone]


#79859

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 12:45 +0200
Message-ID<s8g042$8j3$2@dont-email.me>
In reply to#79856
>> But that's wrong. You can deduce that from the fact that almost
>> no parallel application is implemented using fork()ing today.

> So you keep saying but you've yet to provide anything to back up your
> assertion.

All open source database servers f.e. employ MT.

[toc] | [prev] | [next] | [standalone]


#79868

FromDavid Brown <david.brown@hesbynett.no>
Date2021-05-24 13:42 +0200
Message-ID<s8g3ep$9i3$1@dont-email.me>
In reply to#79859
On 24/05/2021 12:45, Bonita Montero wrote:
>>> But that's wrong. You can deduce that from the fact that almost
>>> no parallel application is implemented using fork()ing today.
> 
>> So you keep saying but you've yet to provide anything to back up your
>> assertion.
> 
> All open source database servers f.e. employ MT.
> 

Postgresql is the biggest, most serious and feature-rich open source
database, AFAIK - and it forks (and - again AFAIK - it does not use
threads at all).  It has a strong *nix heritage, where forking is cheap
and threads were late to the party.  From the brief things I have read
about its model, the developers said that starting from scratch they
might have used threads, but they would not expect significant
performance benefits.

And of course "open source database servers" is a rather small
proportion of "all parallel applications".

I'd agree that multi-threading is common today, and many applications
that previously would have been written using forking will now use
threads.  In particular, anything that is supposed to work on Windows
will prefer threads because Window's can't do forking, but on *nix the
cost of forking is not usually much different from threading.

[toc] | [prev] | [next] | [standalone]


#79873

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 13:54 +0200
Message-ID<s8g460$nf3$1@dont-email.me>
In reply to#79868
> Postgresql is the biggest, most serious and feature-rich open source
> database, AFAIK - and it forks (and - again AFAIK - it does not use
> threads at all).  It has a strong *nix heritage, where forking is cheap
> and threads were late to the party. ...

Ok, you're right up to here. But fork()ing is never cheap comapred to
creating a thread. Creating a thread on my Linux Ryzen 7 1800X is about
17.000 clock cycles and I bet fork()ing is magnitudes higher if you
include the costs of making copy-on-writes of every written page.

> I'd agree that multi-threading is common today, and many applications
> that previously would have been written using forking will now use
> threads.  In particular, anything that is supposed to work on Windows
> will prefer threads because Window's can't do forking, but on *nix the
> cost of forking is not usually much different from threading.

Wrong, fork()ing is a pain in the ass when writing parallel
applications. Threading is a mangnitude easier to maintain.

[toc] | [prev] | [next] | [standalone]


#79874

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 14:19 +0200
Message-ID<s8g5lf$co6$1@dont-email.me>
In reply to#79873
> Ok, you're right up to here. But fork()ing is never cheap comapred to
> creating a thread. Creating a thread on my Linux Ryzen 7 1800X is about
> 17.000 clock cycles and I bet fork()ing is magnitudes higher if you
> include the costs of making copy-on-writes of every written page.

I just wrote a little program:

#include <unistd.h>
#include <iostream>
#include <chrono>
#include <cstdlib>
#include <cctype>
#include <cstring>
#include <cstdint>

using namespace std;
using namespace chrono;

int main( int argc, char **argv )
{
	using sc_tp = time_point<steady_clock>;
	if( argc < 2 )
		return EXIT_FAILURE;
	uint64_t k     = 1'000 * (unsigned)atoi( argv[1] );
	sc_tp    start = steady_clock::now();
	char     buf[0x10000];
	for( uint64_t n = 0; fork() == 0; ++n )
	{
		memset( buf, 0, sizeof buf );
		if( n == k )
		{
			double ns = (double)(int64_t)duration_cast<nanoseconds>( 
steady_clock::now() - start ).count() / (int64_t)k;
			cout << ns << endl;
			break;
		}
	}
}

On my Ryzen 7 1800X Linux PC it gives me a fork-cost of about
180.000 to 222.000 clock cycles per fork. Any questions ? I'm
doing a minimal writing in a 64kB-block (hopefully this isn't
optimized away) to simulate some copy-on-write. As you can see
forking is magnitudes slower than creating a thread (17.000
cylces on the same machine).

[toc] | [prev] | [next] | [standalone]


#79890

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 15:02 +0200
Message-ID<s8g84p$egf$1@dont-email.me>
In reply to#79874
> ...(hopefully this isn't optimized away) ...
It was ! And if I use this code:

#include <unistd.h>
#include <iostream>
#include <chrono>
#include <cstdlib>
#include <cctype>
#include <cstring>
#include <cstdint>

using namespace std;
using namespace chrono;

int main( int argc, char **argv )
{
	using sc_tp = time_point<steady_clock>;
	if( argc < 2 )
		return EXIT_FAILURE;
	uint64_t      k     = 1'000 * (unsigned)atoi( argv[1] );
	sc_tp         start = steady_clock::now();
	char volatile buf[0x10000]; // new
	for( uint64_t n = 0; fork() == 0; ++n )
	{
		for( char volatile &c : buf ) // new
			c = 0; // new
		if( n == k )
		{
			double ns = (double)(int64_t)duration_cast<nanoseconds>( 
steady_clock::now() - start ).count() / (int64_t)k;
			cout << ns << endl;
			break;
		}
	}
}

The fork()ing cost raises by about 50.000 clock cylces.
Now imagine a the cost of CoW with a large application !

[toc] | [prev] | [next] | [standalone]


#79898

FromMrSpook_1shmhc5pEg@qedprf.biz
Date2021-05-24 13:57 +0000
Message-ID<s8gbc6$1jk0$1@gioia.aioe.org>
In reply to#79874
On Mon, 24 May 2021 14:19:57 +0200
Bonita Montero <Bonita.Montero@gmail.com> wrote:
>On my Ryzen 7 1800X Linux PC it gives me a fork-cost of about
>180.000 to 222.000 clock cycles per fork. Any questions ? I'm
>doing a minimal writing in a 64kB-block (hopefully this isn't
>optimized away) to simulate some copy-on-write. As you can see
>forking is magnitudes slower than creating a thread (17.000
>cylces on the same machine).

So what? Do you ever manage to understand the point for anything? Is it an 
English comprehension problem?

[toc] | [prev] | [next] | [standalone]


#79933

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 18:15 +0200
Message-ID<s8gjf5$frn$4@dont-email.me>
In reply to#79898
> So what? Do you ever manage to understand the point for anything? Is it an
> English comprehension problem?

I've shown that fork()ing is much more slower than to create a thread.
And even more a lot slower when pages are CoWd.

[toc] | [prev] | [next] | [standalone]


#79891

FromDavid Brown <david.brown@hesbynett.no>
Date2021-05-24 15:21 +0200
Message-ID<s8g992$64q$1@dont-email.me>
In reply to#79873
On 24/05/2021 13:54, Bonita Montero wrote:
>> Postgresql is the biggest, most serious and feature-rich open source
>> database, AFAIK - and it forks (and - again AFAIK - it does not use
>> threads at all).  It has a strong *nix heritage, where forking is cheap
>> and threads were late to the party. ...
> 
> Ok, you're right up to here. But fork()ing is never cheap comapred to
> creating a thread. Creating a thread on my Linux Ryzen 7 1800X is about
> 17.000 clock cycles and I bet fork()ing is magnitudes higher if you
> include the costs of making copy-on-writes of every written page.
> 

Copy-on-write takes cycles, of course - but you only need to do the copy
on pages that are written.  And you'd need to write the same data in a
multi-threaded implementation.

I would expect forking to have slightly more overhead than threading in
a use-case that suits either.  I expect threading to be more efficient
if you have a lot of shared data or state (since sharing is the default
in threading), and I expect forking to be more efficient if you need
separation for reliability or security (since separation is the default
for forking).

The Postgresql folk are pretty good at this kind of thing, and they
reckon moving to threading would not be worth the effort or the risk in
terms of stability or security.  I assume they know what they are
talking about - but I don't assume it applies to all applications.

>> I'd agree that multi-threading is common today, and many applications
>> that previously would have been written using forking will now use
>> threads.  In particular, anything that is supposed to work on Windows
>> will prefer threads because Window's can't do forking, but on *nix the
>> cost of forking is not usually much different from threading.
> 
> Wrong, fork()ing is a pain in the ass when writing parallel
> applications. Threading is a mangnitude easier to maintain.

You come from a Windows world, where forking is not supported.  In the
*nix world, it's a different matter.

There are pros and cons of both systems.  Apache, for example, uses both
on supported systems - it has multiple processes, each with multiple
threads.

I am not disagreeing with the idea that multi-threading is often more
efficient than multi-processing, or that it is more common - I am merely
disagreeing with your blanket generalisations about multi-threading
/always/ being better and /always/ being used.

[toc] | [prev] | [next] | [standalone]


#79895

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 15:37 +0200
Message-ID<s8ga6a$gl9$1@dont-email.me>
In reply to#79891
> Copy-on-write takes cycles, of course - but you only need to do the copy
> on pages that are written. ...

Unfortunately you inherit the original fragmented heap of the parent
-process so that there might be a lot of Cows.

> I would expect forking to have slightly more overhead than threading in
> a use-case that suits either.  I expect threading to be more efficient
> if you have a lot of shared data or state (since sharing is the default
> in threading), and I expect forking to be more efficient if you need
> separation for reliability or security (since separation is the default
> for forking).

Why should forking ever be faster ? There's no reason for this. If
you have decoupled threads which don't synchronize or simpley read
-share memory, they could perorm slightly faster since a context
-switch doesn't always include a TLB-flush.

> You come from a Windows world, where forking is not supported.
> In the *nix world, it's a different matter.

My statement was a general statement - threaded applications are easier
to write and fork()ing is at best equally performant, but usually less.

> I am not disagreeing with the idea that multi-threading is often more
> efficient than multi-processing, or that it is more common - I am merely
> disagreeing with your blanket generalisations about multi-threading
> /always/ being better and /always/ being used.

It's better almost every time.

[toc] | [prev] | [next] | [standalone]


#79896

FromMrSpook_61Z@avwe8ulg.co.uk
Date2021-05-24 13:49 +0000
Message-ID<s8gau3$1cl6$1@gioia.aioe.org>
In reply to#79895
On Mon, 24 May 2021 15:37:11 +0200
Bonita Montero <Bonita.Montero@gmail.com> wrote:
>> You come from a Windows world, where forking is not supported.
>> In the *nix world, it's a different matter.
>
>My statement was a general statement - threaded applications are easier
>to write and fork()ing is at best equally performant, but usually less.

How can threading be easier to write when you have to worry about locking
and race conditions, vs fork() which is fire and forget if you don't need 
inter process synchronisation?

>> I am not disagreeing with the idea that multi-threading is often more
>> efficient than multi-processing, or that it is more common - I am merely
>> disagreeing with your blanket generalisations about multi-threading
>> /always/ being better and /always/ being used.
>
>It's better almost every time.

You're the best example I've seen in a long time of someone who's only tool
is a hammer so to you everything looks like a nail.

[toc] | [prev] | [next] | [standalone]


#79926

FromBonita Montero <Bonita.Montero@gmail.com>
Date2021-05-24 18:14 +0200
Message-ID<s8gjd5$frn$3@dont-email.me>
In reply to#79896
> How can threading be easier to write when you have to worry about locking
> and race conditions, vs fork() which is fire and forget if you don't need
> inter process synchronisation?

If you don't need synchronization you won't need it for fork()ing
#and threading as well. Then you simply could fire a thread with
thread( func, params ... ).detach() and forget the thread.

[toc] | [prev] | [next] | [standalone]


#79917

FromManfred <noname@add.invalid>
Date2021-05-24 16:58 +0200
Message-ID<s8geuv$1evo$1@gioia.aioe.org>
In reply to#79891
On 5/24/2021 3:21 PM, David Brown wrote:
> On 24/05/2021 13:54, Bonita Montero wrote:
>> On 5/24/2021 3:21 PM, David Brown wrote:
>>> I'd agree that multi-threading is common today, and many applications
>>> that previously would have been written using forking will now use
>>> threads.  In particular, anything that is supposed to work on Windows
>>> will prefer threads because Window's can't do forking, but on *nix the
>>> cost of forking is not usually much different from threading.
>>
>> Wrong, fork()ing is a pain in the ass when writing parallel
>> applications. Threading is a mangnitude easier to maintain.
> 
> You come from a Windows world, where forking is not supported.  In the
> *nix world, it's a different matter.
> 
> There are pros and cons of both systems.  Apache, for example, uses both
> on supported systems - it has multiple processes, each with multiple
> threads.
> 
> I am not disagreeing with the idea that multi-threading is often more
> efficient than multi-processing, or that it is more common - I am merely
> disagreeing with your blanket generalisations about multi-threading
> /always/ being better and /always/ being used.
> 

The difference between fork and threads is not just how much they cost 
in terms of resource consumption. Their memory model is obviously and 
fundamentally different, and that's what drives the design choice 
between them.
In the design of a service that must serve clients on different 
connections it's very common that you don't /want/ to share the same 
process space among all clients, because of a number of reasons ranging 
from security to process robustness to design efficiency. sshd and 
postgresql have been mentioned, other examples are file servers, wherein 
the natural choice for synchronization is at the filesystem level. I'm 
sure many more examples exist.
It's clearly no coincidence that fork() serves this kind of purpose 
pretty well, and that it was designed this way in the *nix world.

However the benefit of a multiprocess design is not only for server code.
Even in a single user scenario the design of a complex system with 
dozens of tasks may very well choose a multiprocess solution especially 
if system stability is a primary requirement, where you don't want a 
fault in one function to compromise the whole system.
I've seen this happen even under Windows.

[toc] | [prev] | [next] | [standalone]


Page 8 of 13 — ← Prev page 1 … 6 7 [8] 9 10 … 13  Next page →

Back to top | Article view | comp.lang.c++


csiph-web