Skip to Main Content
IBM System Storage Ideas Portal


This portal is to open public enhancement requests against IBM System Storage products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Submitted
Created by Guest
Created on Jul 10, 2026

gpfs_prealloc() support to preallocate any bytes of an new created file without zero-out data

Most of recent AI workload saves raw data in cloud object storage. When GPU is going to training partial of raw data, these data will be loaded and saved in high performance file system, such as Storage Scale.

In ADAS and some of other AI workloads, file size of these raw data are mostly several KB to several hundreds of KB. When we get these data from cloud object storage and write it to GPFS file system, GPFS will create a new file, and allocate a data block (default 4MB) to save these several hundreds of KB data and then shrink the file size. There are lots of allocation map related operation for these kinds of files.

In current gpfs_prealloc API implementations:

https://www.ibm.com/docs/en/storage-scale/5.2.3?topic=interfaces-gpfs-prealloc-subroutine

"The preallocated disk storage begins at the specified offset in the file and extends for the specified number of bytes, rounded up to a GPFS block boundary. Existing data is not modified. Reading any of the preallocated blocks returns zeroes."

From our sanity test in a 5.2.3 cluster, gpfs_prealloc will always zero-out preallocate blocks before we write data into them which make some I/O amplification.

Since we already know the file size and how many data we need to save to GPFS file system, we would like to propose a method for this API to make it support to preallocate any bytes of data for a new created file (don't rounded up to block boundary), and don't zero out these bytes. Hope we can use this enhanced API to save some metadata operations in GPFS.

Idea priority Urgent