Quantcast
Jump to content

New Vulkan Extensions for Mobile: Maintenance Extensions


STF News
 Share

Recommended Posts

2021-06-14-01-banner.jpg

The Samsung Developers team works with many companies in the mobile and gaming ecosystems. We're excited to support our partner, Arm, as they bring timely and relevant content to developers looking to build games and high-performance experiences. This Vulkan Extensions series will help developers get the most out of the new and game-changing Vulkan extensions on Samsung mobile devices.

Android is enabling a host of useful new Vulkan extensions for mobile. These new extensions are set to improve the state of graphics APIs for modern applications, enabling new use cases and changing how developers can design graphics renderers going forward. In particular, in Android R, there has been a whole set of Vulkan extensions added. These extensions will be available across various Android smartphones, including the Samsung Galaxy S21, which was recently launched on 14 January. Existing Samsung Galaxy S models, such as the Samsung Galaxy S20, also allow upgrades to Android R.

One of these new Vulkan extensions for mobile are ‘maintenance extensions’. These plug up various holes in the Vulkan specification. Mostly, a lack of these extensions can be worked around, but it is annoying for application developers to do so. Having these extensions means less friction overall, which is a very good thing.

VK_KHR_uniform_buffer_standard_layout

This extension is a quiet one, but I still feel it has a lot of impact since it removes a fundamental restriction for applications. Getting to data efficiently is the lifeblood of GPU programming.

One thing I have seen trip up developers again and again are the antiquated rules for how uniform buffers (UBO) are laid out in memory. For whatever reason, UBOs have been stuck with annoying alignment rules which go back to ancient times, yet SSBOs have nice alignment rules. Why?

As an example, let us assume we want to send an array of floats to a shader:

#version 450

layout(set = 0, binding = 0, std140) uniform UBO
{
    float values[1024];
};

layout(location = 0) out vec4 FragColor;
layout(location = 0) flat in int vIndex;

void main()
{
    FragColor = vec4(values[vIndex]);
}

If you are not used to graphics API idiosyncrasies, this looks fine, but danger lurks around the corner. Any array in a UBO will be padded out to have 16 byte elements, meaning the only way to have a tightly packed UBO is to use vec4 arrays. Somehow, legacy hardware was hardwired for this assumption. SSBOs never had this problem.

std140 vs std430

You might have run into these weird layout qualifiers in GLSL. They reference some rather old GLSL versions. std140 refers to GLSL 1.40, which was introduced in OpenGL 3.1, and it was the version uniform buffers were introduced to OpenGL.

The std140 packing rules define how variables are packed into buffers. The main quirks of std140 are:

  • Vectors are aligned to their size. Notoriously, a vec3 is aligned to 16 bytes, which have tripped up countless programmers over the years, but this is just the nature of vectors in general. Hardware tends to like aligned access to vectors.
  • Array element sizes are aligned to 16 bytes. This one makes it very wasteful to use arrays of float and vec2.

The array quirk mirrors HLSL’s cbuffer. After all, both OpenGL and D3D mapped to the same hardware. Essentially, the assumption I am making here is that hardware was only able to load 16 bytes at a time with 16 byte alignment. To extract scalars, you could always do that after the load.

std430 was introduced in GLSL 4.30 in OpenGL 4.3 and was designed to be used with SSBOs. std430 removed the array element alignment rule, which means that with std430, we can express this efficiently:

#version 450

layout(set = 0, binding = 0, std430) readonly buffer SSBO
{
    float values[1024];
};

layout(location = 0) out vec4 FragColor;
layout(location = 0) flat in int vIndex;

void main()
{
    FragColor = vec4(values[vIndex]);
}

Basically, the new extension enables std430 layout for use with UBOs as well.

#version 450
#extension GL_EXT_scalar_block_layout : require

layout(set = 0, binding = 0, std430) uniform UBO
{
    float values[1024];
};

layout(location = 0) out vec4 FragColor;
layout(location = 0) flat in int vIndex;

void main()
{
    FragColor = vec4(values[vIndex]);
}

Why not just use SSBOs then?

On some architectures, yes, that is a valid workaround. However, some architectures also have special caches which are designed specifically for UBOs. Improving memory layouts of UBOs is still valuable.

GL_EXT_scalar_block_layout?

The Vulkan GLSL extension which supports std430 UBOs goes a little further and supports the scalar layout as well. This is a completely relaxed layout scheme where alignment requirements are essentially gone, however, that requires a different Vulkan extension to work.

VK_KHR_separate_depth_stencil_layouts

Depth-stencil images are weird in general. It is natural to think of these two aspects as separate images. However, the reality is that some GPU architectures like to pack depth and stencil together into one image, especially with D24S8 formats.

Expressing image layouts with depth and stencil formats have therefore been somewhat awkward in Vulkan, especially if you want to make one aspect read-only and keep another aspect as read/write, for example.

In Vulkan 1.0, both depth and stencil needed to be in the same image layout. This means that you are either doing read-only depth-stencil or read/write depth-stencil. This was quickly identified as not being good enough for certain use cases. There are valid use cases where depth is read-only while stencil is read/write in deferred rendering for example.

Eventually, VK_KHR_maintenance2 added support for some mixed image layouts which lets us express read-only depth, read/write stencil, and vice versa:

VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR

VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR

Usually, this is good enough, but there is a significant caveat to this approach, which is that depth and stencil layouts must be specified and transitioned together. This means that it is not possible to render to a depth aspect, while transitioning the stencil aspect concurrently, since changing image layouts is a write operation. If the engine is not designed to couple depths and stencil together, it causes a lot of friction in implementation.

What this extension does is completely decouple image layouts for depth and stencil aspects and makes it possible to modify the depth or stencil image layouts in complete isolation. For example:

    VkImageMemoryBarrier barrier = {…};

Normally, we would have to specify both DEPTH and STENCIL aspects for depth-stencil images. Now, we can completely ignore what stencil is doing and only modify depth image layout.

    barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_DEPTH_BIT;
    barrier.oldLayout = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR;
    barrier.newLayout = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL;

Similarly, in VK_KHR_create_renderpass2, there are extension structures where you can specify stencil layouts separately from the depth layout if you wish.

typedef struct VkAttachmentDescriptionStencilLayout {
    VkStructureType sType;
    void*          pNext;
    VkImageLayout      stencilInitialLayout;
    VkImageLayout      stencilFinalLayout;
} VkAttachmentDescriptionStencilLayout;

typedef struct VkAttachmentReferenceStencilLayout {
    VkStructureType sType;
    void*          pNext;
    VkImageLayout  stencilLayout;
} VkAttachmentReferenceStencilLayout;

Like image memory barriers, it is possible to express layout transitions that only occur in either depth or stencil attachments.

VK_KHR_spirv_1_4

Each core Vulkan version has targeted a specific SPIR-V version. For Vulkan 1.0, we have SPIR-V 1.0. For Vulkan 1.1, we have SPIR-V 1.3, and for Vulkan 1.2 we have SPIR-V 1.5.

SPIR-V 1.4 was an interim version between Vulkan 1.1 and 1.2 which added some nice features, but the usefulness of this extension is largely meant for developers who like to target SPIR-V themselves. Developers using GLSL or HLSL might not find much use for this extension. Some highlights of SPIR-V 1.4 that I think are worth mentioning are listed here.

OpSelect between composite objects

OpSelect before SPIR-V 1.4 only supports selecting between scalars and vectors. SPIR-V 1.4 thus allows you to express this kind of code easily with a simple OpSelect:

    MyStruct s = cond ? MyStruct(1, 2, 3) : MyStruct(4, 5, 6);

OpCopyLogical

There are scenarios in high-level languages where you load a struct from a buffer and then place it in a function variable. If you have ever looked at SPIR-V code for this kind of scenario, glslang would copy each element of the struct one by one, which generates bloated SPIR-V code. This is because the struct type that lives in a buffer and a struct type for a function variable are not necessarily the same. Offset decorations are the major culprits here. Copying objects in SPIR-V only works when the types are exactly the same, not “almost the same”. OpCopyLogical fixes this problem where you can copy objects of types which are the same except for decorations.

Advanced loop control hints

SPIR-V 1.4 adds ways to express partial unrolling, how many iterations are expected, and such advanced hints, which can help a driver optimize better using knowledge it otherwise would not have. There is no way to express these in normal shading languages yet, but it does not seem difficult to add support for it.

Explicit look-up tables

Describing look-up tables was a bit awkward in SPIR-V. The natural way to do this in SPIR-V 1.3 is to declare an array with private storage scope with an initializer, access chain into it and load from it. However, there was never a way to express that a global variable is const, which relies on compilers to be a little smart. As a case study, let us see what glslang emits when using Vulkan 1.1 target environment:

#version 450

layout(location = 0) out float FragColor;
layout(location = 0) flat in int vIndex;

const float LUT[4] = float[](1.0, 2.0, 3.0, 4.0);

void main()
{
    FragColor = LUT[vIndex];
}

%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
%16 = OpConstantComposite %_arr_float_uint_4 %float_1 %float_2 %float_3 %float_4

This is super weird code, but it is easy for compilers to promote to a LUT. If the compiler can prove there are no readers before the OpStore, and only one OpStore can statically happen, compiler can optimize it to const LUT.

%indexable = OpVariable %_ptr_Function__arr_float_uint_4 Function
OpStore %indexable %16
%24 = OpAccessChain %_ptr_Function_float %indexable %index
%25 = OpLoad %float %24

In SPIR-V 1.4, the NonWritable decoration can also be used with Private and Function storage variables. Add an initializer, and we get something that looks far more reasonable and obvious:

OpDecorate %indexable NonWritable
%16 = OpConstantComposite %_arr_float_uint_4 %float_1 %float_2 %float_3 %float_4

// Initialize an array with a constant expression and mark it as NonWritable.
// This is trivially a LUT.
%indexable = OpVariable %_ptr_Function__arr_float_uint_4 Function %16
%24 = OpAccessChain %_ptr_Function_float %indexable %index
%25 = OpLoad %float %24

VK_KHR_shader_subgroup_extended_types

This extension fixes a hole in Vulkan subgroup support. When subgroups were introduced, it was only possible to use subgroup operations on 32-bit values. However, with 16-bit arithmetic getting more popular, especially float16, there are use cases where you would want to use subgroup operations on smaller arithmetic types, making this kind of shader possible:

#version 450

// subgroupAdd
#extension GL_KHR_shader_subgroup_arithmetic : require

For FP16 arithmetic:

#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require

For subgroup operations on FP16:

#extension GL_EXT_shader_subgroup_extended_types_float16 : require

layout(location = 0) out f16vec4 FragColor;
layout(location = 0) in f16vec4 vColor;

void main()
{
    FragColor = subgroupAdd(vColor);
}

VK_KHR_imageless_framebuffer

In most engines, using VkFramebuffer objects can feel a bit awkward, since most engine abstractions are based around some idea of:

MyRenderAPI::BindRenderTargets(colorAttachments, depthStencilAttachment)

In this model, VkFramebuffer objects introduce a lot of friction, since engines would almost certainly end up with either one of two strategies:

  • Create a VkFramebuffer for every render pass, free later.
  • Maintain a hashmap of all observed attachment and render-pass combinations.

Unfortunately, there are some … reasons why VkFramebuffer exists in the first place, but VK_KHR_imageless_framebuffer at least removes the largest pain point. This is needing to know the exact VkImageViews that we are going to use before we actually start rendering.

With imageless frame buffers, we can defer the exact VkImageViews we are going to render into until vkCmdBeginRenderPass. However, the frame buffer itself still needs to know about certain metadata ahead of time. Some drivers need to know this information unfortunately.

First, we set the VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT flag in vkCreateFramebuffer. This removes the need to set pAttachments. Instead, we specify some parameters for each attachment. We pass down this structure as a pNext:

typedef struct VkFramebufferAttachmentsCreateInfo {
    VkStructureType                        sType;
    const void*                                pNext;
    uint32_t                                   attachmentImageInfoCount;
    const VkFramebufferAttachmentImageInfo*    pAttachmentImageInfos;
} VkFramebufferAttachmentsCreateInfo;

typedef struct VkFramebufferAttachmentImageInfo {
    VkStructureType   sType;
    const void*       pNext;
    VkImageCreateFlags flags;
    VkImageUsageFlags usage;
    uint32_t          width;
    uint32_t          height;
    uint32_t          layerCount;
    uint32_t          viewFormatCount;
    const VkFormat*   pViewFormats;
} VkFramebufferAttachmentImageInfo;

Essentially, we need to specify almost everything that vkCreateImage would specify. The only thing we avoid is having to know the exact image views we need to use.

To begin a render pass which uses imageless frame buffer, we pass down this struct in vkCmdBeginRenderPass instead:

typedef struct VkRenderPassAttachmentBeginInfo {
    VkStructureType   sType;
    const void*       pNext;
    uint32_t          attachmentCount;
    const VkImageView* pAttachments;
} VkRenderPassAttachmentBeginInfo;

Conclusions

Overall, I feel like this extension does not really solve the problem of having to know images up front. Knowing the resolution, usage flags of all attachments up front is basically like having to know the image views up front either way. If your engine knows all this information up-front, just not the exact image views, then this extension can be useful. The number of unique VkFramebuffer objects will likely go down as well, but otherwise, there is in my personal view room to greatly improve things.

In the next blog on the new Vulkan extensions, I explore 'legacy support extensions.'

Follow Up

Thanks to Hans-Kristian Arntzen and the team at Arm for bringing this great content to the Samsung Developers community. We hope you find this information about Vulkan extensions useful for developing your upcoming mobile games.

The Samsung Developers site has many resources for developers looking to build for and integrate with Samsung devices and services. Stay in touch with the latest news by creating a free account or by subscribing to our monthly newsletter. Visit the Marketing Resources page for information on promoting and distributing your apps and games. Finally, our developer forum is an excellent way to stay up-to-date on all things related to the Galaxy ecosystem.

View the full blog at its source

Link to comment
Share on other sites



  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Similar Topics

    • By STF News
      Samsung Electronics announced today that the Samsung Gaming Hub1 is now rolling out to all 2022 Samsung Smart TVs bringing the best game streaming content and game playing experiences with no additional hardware or downloads needed. Announced during CES 2022, Samsung Gaming Hub is an all-in-one game streaming discovery platform where players can discover and play games they love from partners such as Xbox, NVIDIA GeForce NOW, Google Stadia, Utomik, and, coming soon, Amazon Luna. The Samsung Gaming Hub brings better, faster and more convenient access to all things gaming within Samsung TVs, including the 2022 Neo QLED 8K, Neo QLED 4K, QLEDs and 2022 Smart Monitor Series, bridging Samsung’s expertise in hardware and software for an optimal gaming experience.
       

       
      “The Samsung Gaming Hub combines Samsung’s leadership in streaming technology with our experience in creating the industry’s most cutting-edge hardware, removing the barriers to entry so people can just play,” said Won-Jin Lee, President and Head of the Service Business Team at Samsung Electronics. “With expanding partnerships across leading game streaming services and expert curated recommendations, players will be able to easily browse and discover games from the widest selection available, regardless of platform.”
       
       
      Where Gaming Comes Together
      Powered by Tizen, Samsung Gaming Hub allows players to instantly access the games they love from industry-leading partners such as Xbox, NVIDIA GeForce NOW, Google Stadia, Utomik, and coming soon, Amazon Luna in addition to their gaming consoles and PC, all in one convenient place.2 Players can use their favorite accessories, such as Bluetooth headsets and controllers with the Samsung Gaming Hub without the need to purchase new hardware — making it easier to access games than ever before. Additionally, users will be able to see expertly curated recommendations based on the latest and most popular games.
       

       
      The Samsung Gaming Hub also seamlessly integrates music and streaming services to provide access to more entertainment options during gameplay, with easy connection to Twitch, YouTube and Spotify directly on the Gaming Hub experience menu. Players can get the latest gaming news, watch tutorials, play their favorite music and podcasts and view trailers from the most anticipated games all from the new and convenient Gaming Hub.
       
       
      Streaming Innovation Meets Incredible Processor and Picture Quality
      Players can also look forward to an amazing gaming experience thanks to advanced motion enhancements and latency reducing technology across Samsung’s 2022 Smart TV lineup and 2022 Smart Monitor Series. Samsung’s latest lineups introduce faster decoding and optimized buffer control technology which reduces the input lag by more than an average of 30 percent compared to the previous models.
       

       
      Additionally, Samsung’s latest AI upscaling technology optimizes game graphics, providing incredible 4K and 8K resolution with high color accuracy and sharpness.
       
      For more details, visit the Samsung Gaming Hub page.
       
       
      1 Gaming Hub is available in the following countries/regions: US, Canada, UK, Germany, France, Spain, Italy, Korea and Brazil.
      2 Service availability for partners may vary by region; Amazon Luna will be available in select regions later this year.
      View the full article
    • By BGR
      The original iPhone launched 15 years ago, on June 29th, 2007, revolutionizing the industry. Other companies in the business had two choices: copy the iPhone, or stick with what they were doing. Google immediately saw the genius behind the iPhone and overhauled Android so that it was more like the iPhone instead of a BlackBerry clone. But it was Samsung that really made the most of the iPhone in the years that followed, copying everything about that original iPhone.
      The topic resurfaced 15 years later during a documentary released ahead of the iPhone’s 15th anniversary. It’s in this context that an Apple executive commented on the way Samsung copied the iPhone in the early years.
      15 years of iPhone
      The Wall Street Journal’s Joanna Stern made the iPhone anniversary documentary. The video features various current and former Apple executives talking about what it was like to make the first iPhone. They also explained all the innovations that followed. From the original iPhone to the iPhone 13, the clip shows the iconic designs and the features that helped Apple transform the industry.
      The clip looks at what the iPhone (and smartphones in general) mean for the younger generations, who were born into a world that relies on smartphones for everything. From keeping in contact with loved ones to work and entertainment, these devices do it all. And with that comes the problem of spending too much time on these screens.
      Apple’s marketing chief Greg Joswiak talked to Stern about the history of the iPhone. And that involved the impact the handset had on Apple’s competition. It’s in this context that Samsung came up, with the executive explaining how Apple felt about Samsung copying the iPhone.
      Samsung Galaxy S22 Plus smartphone. Image source: Samsung Did Samsung copy the iPhone?
      “They were annoying,” Joswiak said of Samsung. “And they were annoying because, as you know, they ripped off our technology. They took the innovations that we had created and created a poor copy of it, and just put a bigger screen around it. So, yeah, we were none too pleased.”
      Apple sued Samsung around the world starting in 2011, and it won one of the biggest cases, getting $1 billion initially. The final amount was just over half that following Samsung’s appeal. But by then, Samsung was already the big winner in the mobile industry. Its decision to ruthlessly copy the iPhone was the smartest decision Samsung ever made.
      The Korean giant never acknowledged any wrongdoing, and the two companies eventually settled in 2018. By then, Samsung was no longer copying the iPhone design and experience as blatantly. The Galaxy S phones had a different design and a different user interface.
      Ironically enough, most current smartphones look similar nowadays. And many Android designs still copy the iPhone.
      There’s no question that Apple took inspiration from Samsung too, at least when it comes to bringing bigger screens to the iPhone. But, to this day, Samsung continues to copy Apple’s iPhone innovations.
      Samsung also regularly mocks the iPhone maker in ads it then has to suppress when it eventually copies the very features it mocked.
      The Apple vs. Samsung camp continues to be divided even now, 15 years after the launch of the first iPhone. Each side accuses the other of copying mobile innovations. But nobody can ever forget Samsung’s 132-page internal document that shows Samsung’s plan to copy the iPhone pixel by pixel.
      That Apple vs. Samsung rivalry is only a tiny part of The Journal’s iPhone documentary, which is certainly worth watching in full. You’ll find it at this link.
      More iPhone coverage: For more iPhone news, visit our iPhone 14 guide.
      The post Apple exec calls Samsung annoying for copying the iPhone so blatantly appeared first on BGR.
      View the full article
    • By BGR
      Amazon’s massive Prime Day 2022 sales event is just a few weeks away. That means there will soon be an avalanche of unbelievable deals on anything and everything you can think of. In fact, there are already some outstanding early Prime Day deals available right now — including free money from Amazon! But Prime Day isn’t the only game in town this summer. The huge Discover Samsung event you’ve been waiting for is now underway, and it’s packed full of terrific deals on popular Samsung devices.
      🚨 SHOP DISCOVER SAMSUNG NOW 🚨 From Galaxy phones and tablets to headphones, kitchen appliances, and stunning Samsung smart TVs. It’s all on sale right now in Samsung’s online store!
      Discover Samsung is the company’s biggest event of the year, and we’re going to highlight our favorite deals for you right here.
      Discover Samsung event: Best smartphone & tablet deals

      Anyone in search of a new Galaxy smartphone has come to the right place. During the big Discover Samsung event of June 2022, there are some seriously impressive deals on the latest Samsung Galaxy phones.
      First up, you can get a Galaxy Z Flip 3 5G with free Galaxy Buds Live for as low as $599.99 with a trade-in. You can even trade in an old smartphone with a cracked screen and still get a credit up to $800. Plus, you’ll get 30% off when you also buy a Galaxy Tab S8 series tablet.
      Speaking of Galaxy S8 Tablets, Samsung is offering free $200 Galaxy Buds Pro with the purchase of any S8 series tablet.
      And if you think those deals are impressive, wait until you see Samsung’s Galaxy Z Fold 3 offer.
      Between now and the end of the Discover Samsung event, you can buy a new Galaxy Z Fold 3 5G with free Galaxy Watch 4 for the same low price of $599.99 with a trade-in. That means you’ll get a trade-in credit of up to $1,200!
      And last but not least, you’ll get a free memory upgrade and a trade-in credit of up to $1,000 when you buy a Galaxy S22 Ultra or a Galaxy S22/S22+. That means you can score a Galaxy S22 256GB starting at $99.99 or a Galaxy S22 Ultra 256GB for $199.99.
      Here’s a recap of those five great deals:
      Galaxy Z Flip 3 5G with free Galaxy Buds Live: $599.99+ with trade-in Galaxy Z Fold 3 5G with free Galaxy Watch 4: $599+ with trade-in Samsung Galaxy S22 Ultra & free memory upgrade: $199.99+ with trade-in Galaxy S22/S22+ & free memory upgrade: $99.99+ with trade-in Galaxy S8 Series Tablet & free Galaxy Buds Pro: $149.99+ More great Samsung deals

      The deals listed above are terrific for anyone in search of a new smartphone or tablet. Of course, that’s just the tip of the iceberg in the Discover Samsung summer sales event.
      There are also fantastic deals available on Samsung TVs, kitchen appliances, smartwatches, laptops, and more. Here are five additional deals that we love:
      Galaxy Watch 4: Save $70 and get an extra charger free Samsung The Frame 4K smart TV: Prices start at just $459.99, save up to $1,000 Galaxy Chromebook, 256GB, 8GB RAM, Fiesta Red: $649.00 (save $350) Bespoke AirDresser Clothing Care System: $1,149.00 (save $450) Bespoke 4-Door French Door Refrigerator: $2,499.00 (save $1,300) Do you want to see more of the deep discounts from the big Discover Samsung event? Start shopping now because this Samsung mega-sale is set to end on Sunday, June 26.
      🚨 SHOP DISCOVER SAMSUNG NOW 🚨 Go here to see this month’s best deals online!
      The post Discover Samsung event: 10 deals you need to see to believe appeared first on BGR.
      View the full article
    • By BGR
      The Galaxy Z Fold 4 is Samsung’s next flagship phone, and the foldable will introduce several significant improvements over its predecessor. And, if new leaks are accurate, the Galaxy Z Fold 4 will start at double the storage compared to its predecessor, or 512GB of built-in memory. The flash upgrade is welcome on a flagship device that will most certainly lack support for microSD storage expansion. That also means the most expensive Fold 4 model will go up to 1TB in storage space.
      But it’s not all good news, as storage upgrades don’t come cheap.
      Galaxy Z Fold 4 storage leaks
      If you thought the Galaxy Z Fold 4 series will not deliver a major product update, the wave of Fold 4 leaks should have made you change your mind by now. According to reports from trusted sources, the new foldable will be lighter and thinner than its predecessor.
      Not only that, but the handset will get an update to the aspect ratio, which will make it easier to use when folded. Moreover, the hinge crease might be milder than before.
      More importantly, the Galaxy Z Fold 4 will deliver a big camera update that should address criticisms regarding the Fold 3’s camera. Also important are the Fold 4 specs, with a recent report indicating that the new Samsung handset will feature the latest Snapdragon 8+ Gen 1 processor. That’s good news to anyone familiar with the Galaxy S22 performance debacle.
      Galaxy Z Fold 4 storage options leaked in Korea. Image source: handphone.or.kr But that recently leaked specs sheet indicated the Fold 4 will come in two storage configurations: 256GB and 512GB. That’s in line with the previous model and a logical move for Samsung. That 256GB entry-level tier is double what you get on most smartphones. And that tier would let Samsung keep in place last year’s price, but that’s just speculation.
      A new finding from Korea indicates that Samsung will make 512GB and 1TB versions of the Galaxy Z Fold 4. That’s according to a website that seems to be run by the Korea Association for ICT Promotion.
      According to Redditors, that’s a website that manages information about lost cellphones in Korea. But the database also includes a hidden search service for smartphone model numbers, including unreleased devices.
      What about the price?
      The listings on the website only show two storage tiers for the Galaxy Z Fold 4: 512GB and 1TB. While some of the Fold 4 models in the list do not have storage designators, there is no entry for a 256GB model.
      We’re just speculating for the time being, but if the information in this database is accurate, then Samsung might double the storage on its next-gen foldable flagship.
      On the other hand, the 256GB storage tier is critical. That’s the kind of storage space you should expect from the cheapest Fold 4 model. Put differently, a bump to 512GB might also help Samsung justify a price increase for the new Fold 4.
      Galaxy Z Fold 4 design render: Foldable screen (top), cover screen and camera details (bottom). Image source: @OnLeaks and Smartprix One of the best things about the Galaxy Z Fold 3 is that the entry price dropped. The phone starts at $1,799, and that’s before all the crazy deals come in. Samsung did its best to lower the cost, offering buyers plenty of sales and the ability to trade in multiple gadgets.
      Nobody could blame Samsung for keeping that entry price in place or raising it, given the larger economic context. But it’ll be interesting to see if Samsung is ready to sell a 512GB Galaxy Z Fold 4 for $1,799. This would essentially give buyers a free storage upgrade.
      Again, we’re assuming there’s no 256GB version of the Fold 4. But there’s no proof that Samsung dropped the 256GB tier for the Fold line.
      Samsung will unveil the Fold 4 on August 10th, according to a leaker. We should learn more details about the new foldable’s storage options well before then.
      The post Samsung might give the Galaxy Z Fold 4 a major storage upgrade appeared first on BGR.
      View the full article
    • By BGR
      As the global economy reels, it’s no surprise smartphone demand is down. Spending $1,000 on a phone isn’t nearly as appealing with a potential recession looming. Earlier in the month, IDC projected that smartphone shipments would decline by 3.5% in 2022. Samsung seems to be feeling the effects of this slowdown as much as any phone maker, as a new report claims the company has millions of unsold phones in stock.
      Samsung struggling to unload new phones
      The Elec reports (via SamMobile) that distributors have 50 million Samsung phones currently sitting in their inventory. The mid-range Galaxy A series is said to make up “a huge portion” of this unsold supply. Sources tell the site that Samsung wants to ship 270 million phones in 2022, but the 50 million unsold phones represent 18% of that sales goal.
      According to The Elec, unsold inventory usually represents about 10% of any company’s total shipments. The fact that Samsung’s is so much higher shows just how significantly the South Korean tech giant overestimated sales in the first half of the year.
      The report goes on to note that Samsung was producing around 20 million phones a month in January and February. That number dropped to 10 million in May, presumably in response to inventory growing while demand was dropping.
      We can’t verify this report, but it isn’t the first to spell trouble for Samsung this spring. Last month, South Korea’s Maeil Economic Daily reported that Samsung was slashing smartphone orders for 2022. A source said that Samsung was lowering its order volume from 310 million units to 280 million units — nearly 10% fewer than planned.
      Apple isn’t immune to low demand either
      iPhone SE 3 color options. Image source: Apple Inc. Of course, Samsung isn’t the only smartphone maker lowering expectations due to inflation, supply chain disruptions, and the Russia-Ukraine war.
      In March, Nikkei Asia reported that Apple would make 20% fewer iPhone SE units in the next quarter than planned. Respected analyst Ming-Chi Kuo said that production issues were not to blame, but rather demand was simply lower than expected.
      Samsung and Apple each have major phone launches planned for the second half of 2022. According to Front Page Tech host Jon Prosser, Samsung will announce the Galaxy Z Fold 4 and Galaxy Z Flip 4 on August 10th. A month later, we expect Apple to host an event of its own to pull back the curtain on the highly-anticipated iPhone 14 line.
      Both companies are certainly hoping that the economy is in better shape later this summer. Otherwise, we might see unsold inventory continue to grow.
      The post Samsung has 50 million unsold phones in stock, new report claims appeared first on BGR.
      View the full article





×
×
  • Create New...