Online Developer Meeting (2022-05-24)

From Octave
Jump to navigation Jump to search

Today's topics[edit]

  • The potential use of Jitter and other virtual machines to speed up Octave execution, by Mohammad-Reza Nabipoor.
    • Discourse thread
    • Unfortunately the speaker didn't show. jwe presented his ideas on VM and linear evaluation instead.
  • Drop "native" MXE Octave builders from buildbot configuration?
    • Discourse thread
      • Drop the builder from the buildbot configuration.
      • Don't actively remove support for native builds from MXE Octave. But don't spend too much time maintaining it. Maybe at some later time, someone will step up to maintain it again.
  • Timeframe for Octave 7.2 release?
    • Important fixes (among others possible loss of .m file content on exit)
    • still unresolved: bug #62308 use of octave::feval causes error: function '...' not found
      • jwe will create a RC within two weeks
  • Update on Fosshost?
    • Buildbot worker on ARM hardware?
      • No, see below
      • Maybe, at a later point ask again for access to their AARCH64 server farm.
    • Possible to run a Mercurial server? With mirror(?), forks for GSoC students(?), ...
      • Possible, needs setup 😇
      • For the time being, GSoC students should use a public service for their fork.
    • Short summary: Octave got one x86_64 server instance (2 cores, 4 GB memory, 500 GB HDD), useful as webserver probably?!
$ uname -a
Linux fosshost 5.10.0-14-amd64 #1 SMP Debian 5.10.113-1 (2022-04-29) x86_64 GNU/Linux

$ free -h
               total
Mem:           3.8Gi

$ lsblk 
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   64G  0 disk 
├─sda1   8:1    0   63G  0 part /
├─sda2   8:2    0    1K  0 part 
└─sda5   8:5    0  975M  0 part [SWAP]
sdb      8:16   0  500G  0 disk 
sr0     11:0    1  378M  0 rom 

$ cat /proc/cpuinfo   # two cores
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 6
model name      : Common KVM processor
stepping        : 1
microcode       : 0x1
cpu MHz         : 2400.084
cache size      : 16384 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc nopl xtopology cpuid tsc_known_freq pni cx16 x2apic hypervisor lahf_lm cpuid_fault pti
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips        : 4800.16
clflush size    : 64
cache_alignment : 128
address sizes   : 40 bits physical, 48 bits virtual
power management:
  • Access by Arun, jwe, Kai, anyone with time and interest (or ideas what to do with it) is welcome to help with the setup.
Kai will start moving the wiki to FossHost; all web-services should move there eventually
  • State of __unimplemented__
  • How to implement a classdef class in C++ code only?
    • Why is the classdef implementation so complicated? Does it need to be?
    • @carandraug and @Maged will look into this for their GSoC project. Pointers welcome.
    • Maybe, some kind of documentation could be a result of the GSoC project.

Previous topics[edit]

  • Meet and greet 5 minutes before meeting (audio testing).
  • Performance over time (Arun, Rik)
    • Discourse thread for background
    • Analysis and profiling of existing code base -- share and solicit experiences.
    • Performance benchmark to track speed over time as part of CI? (Not as part of CI for now, can be done separately, Arun will share progress updates on Discourse)
  • GSoC: call for mentors (Nir/Kai)
    • Interesting mentors should write to Nir or Kai before: 2022-05-06, ideally before.
    • Final deadline (to the sponsor) is May 12.
  • Octave 7.1.0 post-release remarks:
    • Overall time from merge of default to stable (2021-11-24) until release of version 7.1.0 (2022-04-06): approx. 4 months
      • Why does it take us so long for the last couple of releases?
      • Should we start the release process earlier?
    • A couple of bugs have been solved on the stable branch since the release. Last time we released 6.2.0 pretty early after 6.1.0. Should we do the same again?
    • Regressions that should probably be solved before a potential 7.2.0:
      • bug #62308: use of octave::feval causes error: function '...' not found
      • patch #10200: wrong axes using stairs in subplot --- This affects a lot more plotting functions besides stairs. They always plot into gca and ignore the input axes handle.
      • others?

See also[edit]