@siko1056

Filter Tags: #octave (15)  #talks (5)  #software (4)  #math (1) 

Octave Blog Posts

(2021-12-23) Using directed rounding in Octave/Matlab

img

The current IEEE Standard for Floating-Point Arithmetic specifies several rounding modes, which have become accessible to the C/C++ programming languages as part of the C99, C++11, and following standards. GNU Octave and Matlab use in general multi-threaded BLAS/ LAPACK library functions for fast matrix-vector-computations. Depending on the used library, improper thread synchronization might lead to unreliable results when switching the rounding mode using C/C++ functions. This article investigates how to reliably switch the rounding mode in GNU Octave using the performant OpenBLAS library and last resort problem mitigations for Matlab.

(2021-06-10) Bring your own Octave

img

Thanks to the efforts of many developers, GNU Octave can be installed on all commonly used Linux distributions today. If the native distribution Octave package is out of date, Flatpak, snap, and others jump in the gab. Even though the latter systems keep on improving, in the end they are distributed versions, designed to be useful to many users and often difficult to customize. This article describes another distribution independent Octave version, based on Docker/Podman/Singularity images, which can be customized and shared with others. Moreover, it can use JupyterLab as alternative “GUI” for Octave.

(2021-03-17) SavannahAPI - A more systematic overview about bugs and patches

img

The GNU Octave project is registered on the code hosting platform GNU Savannah since April 2002. With about 10,000 of 60,000 bugs, Octave is one of its biggest and most active users. However, the issue tracker interface has some limitations and valuable information is not as accessible as it can be. A data scraping approach SavannahAPI overcomes some of these limitations and offers interesting new insights and overviews.

(2021-01-27) Tell me about the world

img

A short demonstration using pkg-json with GNU Octave to plot a simplified two dimensional political “World Map” from public available JSON data provided by the NASA. The following code can be used, to easily visualize data divided by countries (e.g. population densities, health data, economic figures, tax, export, etc.).

(2020-11-23) Update: Support for the JSON data format after GSoC 2020

img

The Google Summer of Code (GSoC) 2020 is over and I had the pleasure to mentor Abdallah Elshamy, who enriched Octave with the jsondecode() and jsonencode() functions. A remaining issue was the translation of the Octave function matlab.lang.makeValidName to the C++ language. This is now accomplished and the overall results are great.

(2020-11-08) rsync boosted Buildbots

img

Using rsync instead of Buildbot’s own file transfers, which are known to be slow, significantly reduced the file transfer time between the Buildbot Workers and the Buildbot Master from 25.5 hours to about 18 minutes (-98%). This improvement, and a few others, enables a single “strong” Worker to build and publish Octave and all MS Windows installers within 24 hours or with four parallel Workers within 6 hours.

(2020-10-16) Fresh brewed Octave - every day!

img

The octave-buildbot Server and Worker matured a lot in the past two months since I wrote about them in August. Finally, the system is capable of delivering once per day a “fresh brewed” stable Octave release (tarballs, all flavors of MS Windows installers, and the Doxygen documentation). See it yourself on https://octave.space.

(2020-08-19) Support for the JSON data format after GSoC 2020

img

The Google Summer of Code (GSoC) 2020 will end with this August. I had the pleasure to mentor Abdallah Elshamy working on the implementation of the jsondecode() and jsonencode() functions for Octave. These function allow to convert JSON data strings to Octave Objects and vice versa.

(2020-08-17) octave-buildbot: Less painful Octave releases?

img

Since the minor Octave 5.2 release this January, I experienced that building and especially releasing Octave is still a difficult task. Even worse, due to some nasty bugs and the lack of a voluntary, skilled, and motivated release manager, the next major Octave 6.1 release got stuck for eight months now.

(2020-07-01) Boosting the Octave `hilb` function

img

Today, I read an interesting article about Hilbert Matrices in N. Higham’s blog and stumbled over these simple elegant two lines:

(2020-06-18) Testing the OctaveCoder

On June 4th there arrived an extraordinary mail by Hossein on the Octave maintainers mailing-list. To my knowledge he has not been involved into Octave development so far. He introduced shortly and convincingly OctaveCoder:

(2020-06-17) Can git and Mercurial work together?

img

Many popular source code hosting services do not support Mercurial (in short “hg”). After Bitbucket announced the “sunsetting” of Mercurial repositories in April 2020, only good old SourceForge and GNU Savannah still support hg.

(2019-12-24) Talk about Octave at the University of Tokyo

This Christmas I had the honor to give a seminar talk at the University of Tokyo, which was organized by JSIAM.

(2019-11-22) Talk: Scientific programming with GNU Octave

At the Shibaura Institute of Technology I was given the opportunity to talk about GNU Octave.

(2017-03-20) Talk at the OctConf 2017 at CERN

The slides of today’s talk at the OctConf2017 at CERN are available here.

Subscribe [RSS]


(C) 2017 — 2024 Kai Torben Ohlhus. This work is licensed under CC BY 4.0. Page design adapted from minima and researcher. Get the sources on GitHub.