Stories
Slash Boxes
Comments

SoylentNews is people

Log In

Log In

Create Account  |  Retrieve Password


The Final Countdown

Posted by takyon on Monday May 22, @01:58PM (#14556)
21 Comments

Buy your RAM now

Posted by takyon on Sunday April 30, @07:09AM (#14319)
18 Comments
Hardware

Memory prices have slipped below $2/GB (US). I got someone to buy 32 GB DDR4-3200 SO-DIMM for under $60, but it was as low as $50 two weeks ago.

Here's 32 GB DDR4-3600 for $61.

Even DDR5 is not too bad, for example $92 to $100 for 32 GB DDR5-6000, and slow DDR5-4800 is being dumped for less.

If we haven't reached rock bottom for DDR4 prices, it will probably happen within the next couple of months:

Memory market to bottom out in 2Q23 with uncertain recovery prospects
Samsung Becomes Latest Memory Fab to Cut Production Amidst Post-Pandemic Slump
Samsung may cut quarter of chip production to ease inventory woes
DRAM spot prices stop falling
Samsung faces weakest quarter since 2009 as memory chip market in 'worst slump in decades'
SK Hynix sees H2 memory chip rebound; outlook helps shares brush off record loss
Micron to stop lowering memory chip prices starting May, say sources

Make sure to keep a record of your purchase so you can participate in a future class action lawsuit.

Edit: Poor Earnings Force Samsung To Reduce Production Of DDR4 As Pricing Takes A Rollercoaster Dive

Learn to Mine Code @DannyB

Posted by takyon on Monday April 24, @11:07PM (#14261)
20 Comments
Code

https://bard.google.com/

I just got this email:

Bard has just been updated with coding capabilities

Code and debug with Bard

This update introduces software development support for over 20 programming languages, including JavaScript, Python, SQL, TypeScript, and even Google Sheets functions.

Collaborate with Bard to help generate, explain, and debug your code. Google Colab users can also export Python code generated by Bard directly to Google Colab to seamlessly continue programming tasks.

>Write a javascript function for calculating the dates of Fat Tuesday, Ash Wednesday, Good Friday, Easter Sunday, and Pentecost, for a given year.

The Draft 1 it presented to me was incorrect garbage, as is Draft 3, but Draft 2 might be correct:

function calculateDates(year) {
  // Calculate the date of Easter Sunday.
  var easterSunday = easterDate(year);

  // Calculate the dates of the other holidays.
  var fatTuesday = new Date(easterSunday - 47 * 24 * 60 * 60 * 1000);
  var ashWednesday = new Date(fatTuesday - 1 * 24 * 60 * 60 * 1000);
  var goodFriday = new Date(easterSunday - 2 * 24 * 60 * 60 * 1000);
  var pentecost = new Date(easterSunday + 49 * 24 * 60 * 60 * 1000);

  // Return the dates of the holidays.
  return {
    fatTuesday: fatTuesday,
    ashWednesday: ashWednesday,
    goodFriday: goodFriday,
    easterSunday: easterSunday,
    pentecost: pentecost
  };
}

// Calculate the date of Easter Sunday.
function easterDate(year) {
  // Calculate the year of the Paschal full moon.
  var yearOfPaschalFullMoon = (year - 1) % 19 + 1;

  // Calculate the day of the week of the Paschal full moon.
  var dayOfWeekOfPaschalFullMoon = (yearOfPaschalFullMoon + 1) * 2 + (yearOfPaschalFullMoon > 11 ? 4 : 0) % 7;

  // Calculate the date of Easter Sunday.
  var easterSunday = new Date(year, 3, 22 + dayOfWeekOfPaschalFullMoon - 7);

  // If the Paschal full moon falls on a Sunday, then Easter Sunday is the following Sunday.
  if (easterSunday.getDay() === 0) {
    easterSunday.setDate(easterSunday.getDate() + 1);
  }

  // Return the date of Easter Sunday.
  return easterSunday;
}

Nope, it's returning the wrong dates. Nice try.

>Make a radio player that can play BBC World radio and several other stations, using HTML and JavaScript

<!DOCTYPE html>
<html>
<head>
  <title>Radio Player</title>
</head>
<body>
  <h1>Radio Player</h1>
  <div id="stations">
    <ul>
      <li><a href="https://www.bbc.co.uk/sounds/play/bbc_world_service">BBC World Service</a></li>
      <li><a href="https://www.npr.org/sections/live-at-noon/">NPR Live at Noon</a></li>
      <li><a href="https://www.bbc.co.uk/sounds/play/bbc_radio_4_extra">BBC Radio 4 Extra</a></li>
      <li><a href="https://www.bbc.co.uk/sounds/play/bbc_radio_3">BBC Radio 3</a></li>
      <li><a href="https://www.bbc.co.uk/sounds/play/bbc_radio_1">BBC Radio 1</a></li>
    </ul>
  </div>
  <div id="player">
    <audio controls></audio>
  </div>
  <script>
    function playStation(station) {
      var audio = document.querySelector("audio");
      audio.src = station;
      audio.play();
    }

    document.querySelectorAll("a").forEach(function(link) {
      link.addEventListener("click", function() {
        playStation(this.href);
      });
    });
  </script>
</body>
</html>

I selected that draft, added event.preventDefault() to the anchors to prevent them from loading a new page, and changed the URLs to ones that could actually work:

<!DOCTYPE html>
<html>
<head>
  <title>Radio Player</title>
</head>
<body>
  <h1>Radio Player</h1>
  <div id="stations">
    <ul>
      <li><a href="https://realtime.rrr.org.au/p1h">3 Triple R 102.7 FM</a></li>
      <li><a href="http://stream.live.vc.bbcmedia.co.uk/bbc_world_service">BBC World Service</a></li>
      <li><a href="http://stream-relay-geo.ntslive.net/stream">NTS Radio</a></li>
      <li><a href="http://stream0.wfmu.org/freeform-128k">WFMU 91.1</a></li>
      <li><a href="https://ice1.somafm.com/seventies-320-mp3">SomaFM Left Coast 70s</a></li>
    </ul>
  </div>
  <div id="player">
    <audio controls></audio>
  </div>
  <script>
    function playStation(station) {
      var audio = document.querySelector("audio");
      audio.src = station;
      audio.play();
    }

    document.querySelectorAll("a").forEach(function(link) {
      link.addEventListener("click", function() {
        event.preventDefault(); // I added this
        playStation(this.href);
      });
    });
  </script>
</body>
</html>

>What programming languages does Google Bard support?

Google Bard can generate code in over 20 programming languages, including:
  • C++
  • Go
  • Java
  • JavaScript
  • Python
  • TypeScript
  • PHP
  • Ruby
  • Perl
  • Swift
  • Kotlin
  • C#
  • Scala
  • R
  • Julia
  • Haskell
  • OCaml
  • Erlang
  • Elixir
  • Rust

Bard can also generate code for Google Sheets.

Bard is still under development, so its support for different programming languages may not be perfect. However, it is a powerful tool that can be used to generate code in a variety of languages.

It gave me three drafts for this answer, the other two were shorter. It would be funny if it's lying.

Write a demoscene (small program) graphics demonstration in HTML + JavaScript

<!DOCTYPE html>
<html>
<head>
  <title>Demoscene</title>
</head>
<body>
  <canvas id="canvas" width="640" height="480"></canvas>
  <script>
    function main() {
      var ctx = canvas.getContext("2d");
      var lines = [];
      for (var i = 0; i < 10000; i++) {
        var x1 = Math.random() * canvas.width;
        var y1 = Math.random() * canvas.height;
        var x2 = Math.random() * canvas.width;
        var y2 = Math.random() * canvas.height;
        var color = "rgb(" + Math.floor(Math.random() * 255) + "," + Math.floor(Math.random() * 255) + "," + Math.floor(Math.random() * 255) + ")";
        lines.push({
          x1: x1,
          y1: y1,
          x2: x2,
          y2: y2,
          color: color
        });
      }
      requestAnimationFrame(draw);
    }

    function draw(t) {
      ctx.clearRect(0, 0, canvas.width, canvas.height);
      for (var i = 0; i < lines.length; i++) {
        ctx.beginPath();
        ctx.strokeStyle = lines[i].color;
        ctx.moveTo(lines[i].x1, lines[i].y1);
        ctx.lineTo(lines[i].x2, lines[i].y2);
        ctx.stroke();
      }
      requestAnimationFrame(draw);
    }

    window.addEventListener("load", main);
  </script>
</body>
</html>

This is an interesting one, because it works, but only after you fix a couple of obvious errors. Correctly access the "canvas" by using its id, and move that declaration and the lines array outside of the function so the scope is correct. Then it works.

<!DOCTYPE html>
<html>
<head>
  <title>Demoscene</title>
</head>
<body>
  <canvas id="canvas" width="640" height="480"></canvas>
  <script>
  var lines = [];
  var ctx = document.getElementById("canvas").getContext("2d");
    function main() {

      for (var i = 0; i < 10000; i++) {
        var x1 = Math.random() * canvas.width;
        var y1 = Math.random() * canvas.height;
        var x2 = Math.random() * canvas.width;
        var y2 = Math.random() * canvas.height;
        var color = "rgb(" + Math.floor(Math.random() * 255) + "," + Math.floor(Math.random() * 255) + "," + Math.floor(Math.random() * 255) + ")";
        lines.push({
          x1: x1,
          y1: y1,
          x2: x2,
          y2: y2,
          color: color
        });
      }
      requestAnimationFrame(draw);
    }

    function draw(t) {

      ctx.clearRect(0, 0, canvas.width, canvas.height);
      for (var i = 0; i < lines.length; i++) {
        ctx.beginPath();
        ctx.strokeStyle = lines[i].color;
        ctx.moveTo(lines[i].x1, lines[i].y1);
        ctx.lineTo(lines[i].x2, lines[i].y2);
        ctx.stroke();
      }
      requestAnimationFrame(draw);
    }

    window.addEventListener("load", main);
  </script>
</body>
</html>

>Write a Java function for calculating Merseinne Primes.

Of course I spelled it wrong on purpose...

Sure, here is a Java function for calculating Mersenne Primes:

public static boolean isMersennePrime(int n) {
    if (n <= 1) {
        return false;
    }
    if (n == 2) {
        return true;
    }
    if (n % 2 == 0) {
        return false;
    }
    for (int i = 3; i <= Math.sqrt(n); i += 2) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

public static List<Integer> getMersennePrimes(int limit) {
    List<Integer> mersennePrimes = new ArrayList<>();
    for (int i = 2; i <= limit; i++) {
        if (isMersennePrime(i)) {
            mersennePrimes.add(i);
        }
    }
    return mersennePrimes;
}

Some alarm bells are ringing in my head. For reference, the first Mercy primes are: 3, 7, 31, 127, 8191, 131071, 524287, 2147483647...

All in all, interesting stuff, seems a little fucky. I'm sure GPT-5 will do it better. I'd like to try some debugging, but you have to be wary of handing your code to the machine.

>Write a Logitech mouse driver in Rust.

use std::{
    ffi::CStr,
    io::{Read, Write},
    os::raw::{c_char, c_void},
};

/// A Logitech mouse driver.
pub struct LogitechMouseDriver {
    /// The underlying device handle.
    device_handle: *mut c_void,
}

impl LogitechMouseDriver {
    /// Creates a new Logitech mouse driver.
    pub fn new() -> Result<LogitechMouseDriver, Box<dyn std::error::Error>> {
        let device_handle = unsafe {
            ffi::hid_open(
                ffi::HID_USE_DEFAULT_DEVICE,
                ffi::HID_CONNECT_DEFAULT,
                b"Logitech USB Receiver\0",
            )
        };
        if device_handle.is_null() {
            return Err(Box::new(std::io::Error::new(
                std::io::ErrorKind::Other,
                "Failed to open Logitech mouse device",
            )));
        }
        Ok(LogitechMouseDriver { device_handle })
    }

    /// Closes the driver.
    pub fn close(&mut self) {
        unsafe {
            ffi::hid_close(self.device_handle);
        }
    }

    /// Reads the mouse position.
    pub fn read_position(&mut self) -> Result<(i32, i32), Box<dyn std::error::Error>> {
        let mut x = 0;
        let mut y = 0;
        unsafe {
            ffi::hid_read(
                self.device_handle,
                &mut x as *mut i32 as *mut c_void,
                4,
            )?;
            ffi::hid_read(
                self.device_handle,
                &mut y as *mut i32 as *mut c_void,
                4,
            )?;
        }
        Ok((x, y))
    }

    /// Writes a report to the mouse.
    pub fn write_report(&mut self, report: &[u8]) -> Result<(), Box<dyn std::error::Error>> {
        unsafe {
            ffi::hid_write(
                self.device_handle,
                report.as_ptr() as *const c_void,
                report.len(),
            )?;
        }
        Ok(())
    }
}

// The following code is just a simple example of how to use the Logitech mouse driver.

fn main() {
    // Create a new driver.
    let mut driver = LogitechMouseDriver::new().unwrap();

    // Read the mouse position.
    let (x, y) = driver.read_position().unwrap();
    println!("Mouse position: ({}, {})", x, y);

    // Write a report to the mouse.
    let report = [1, 2, 3, 4];
    driver.write_report(&report).unwrap();
}

I'm sure that works.

>Write a Java program that can use up to 16 exabytes of memory

Here is a Java program that can use up to 16 exabytes of memory:

import java.util.ArrayList;
import java.util.List;

public class MemoryHog {

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        while (true) {
            list.add("");
        }
    }
}

This program creates a list of strings and keeps adding elements to it until it runs out of memory. On a 64-bit system with 16 exabytes of memory, this program should run for about 10 minutes before it runs out of memory.

Note that this program is just for demonstration purposes. It is not recommended to run this program on a production system, as it could cause the system to crash.

Unreal Engine 5: Shooter Game Got Too Realistic

Posted by takyon on Sunday April 23, @04:12AM (#14244)
18 Comments
/dev/random

Indie Cop Game Unrecord Looks So Stunningly Realistic Its Gameplay Trailer Is Freaky

Every now and again, an indie game developer comes out of nowhere with a concept trailer or demo that looks too good to be true, prompting skeptics to investigate and shoot down the promising project with harsh reality. We sure hope that doesn't happen with the just-revealed Unrecord, because it's one of the first games we've ever seen with legitimately convincing realism to its graphics.

Foda C, a platinum-selling French rapper, has partnered up with an amateur Unreal Engine developer Alexandre Spindler (@esankiy on Twitter) to form Studio DRAMA. The new indie game studio is already hard at work on its first title, Unrecord. It's a tactical first-person shooter where you play as a police officer, but the game's perspective is uniquely presented in an immersive fashion with almost no HUD elements, just as if it were bodycam footage.

Unrecord - Official Early Gameplay Trailer

Watch the short trailer on YouTube (embedded above) before you keep reading; it's only a couple of minutes long, and it consists entirely of what DRAMA claims is live mouse-and-keyboard gameplay capture footage. The image quality is incredible, and many people have commented that they believe it to be full-motion video footage or a pre-rendered cinematic.

DRAMA is adamant that the gameplay is authentic, though. The developer released a post-reveal FAQ on the game's Steam store page that responds to some of the questions and comments that gamers have had since the reveal yesterday. In the FAQ, the developer states unequivocally that Unrecord is not a VR game, and it is fully-interactive, not a pre-rendered demo. It uses Unreal Engine 5, and appears to make use of the bleeding-edge graphics technology available in Epic's engine.

The developer also addresses the question of whether the game has a pro- or anti-police message in a succinct and distinctly-French way: "Art cannot fight against interpretation." The developers acknowledge that some people may feel disgusted or disturbed by the game's violence, but state that it will avoid topics like discrimination and racism while providing an unbiased take on "criminal acts and police violence."

Skyrim Fan Remakes Whiterun In Unreal Engine 5 And It’s Amazing

The first two Elder Scrolls games made heavy use of procedural generation resulting in a lot of extremely samey environments, but ever since Bethesda abandoned that technique in favor of detailed hand-crafted locales with TES3: Morrowind, they've had a much smaller scale to the world and settlements than the intended "reality" of the fictional world of Tamriel, all due to the limitations of hardware and storage space.

But what if we could see Skyrim as it would "really" be if it were an actual place? That's the concept behind the latest Unreal Engine 5-based remake, created by professional environment artist Leo Torres in his free time over the course of a month. This demo isn't playable, of course; it's really more of a tech demo than anything.

[...] The artist worked off historical sources for population numbers in medieval Scandinavia to come up with a population figure of between 9,000 and 12,000 people for the hold of Whiterun. He says that he initially thought it could be as high as 30,000 but figured that Skyrim's harsh climate as well as the constant conflicts and bandit attacks would keep population figures lower.

[...] The True Scale of Whiterun: Skyrim in UNREAL ENGINE 5!

Related: Epic Games Releases Unreal Engine 5 to the Public

Lucy Mission Targets

Posted by takyon on Saturday March 25, @10:54AM (#13952)
0 Comments
Science

I saw Polymele in the latest list of JWST targets. I checked that, found it was the target of a Lucy spacecraft flyby on September 15, 2027, and also found that a new asteroid has been added early in Lucy's itinerary, 152830 Dinkinesh.

https://www.tablesgenerator.com/text_tables

╔═══════════════════╦═════════════════════════╦═════════════════════════╦══════════╗
║   Encounter date  ║          Target         ║         Diameter        ║ Altitude ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 16 October 2022   ║ Earth (gravity assist)  ║ 12742 km                ║ 300 km   ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 1 November 2023   ║ 152830 Dinkinesh        ║ 0.7 km                  ║ 450 km   ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 13 December 2024  ║ Earth (gravity assist)  ║ 12742 km                ║ 350 km   ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 20 April 2025     ║ 52246 Donaldjohanson    ║ 4 km                    ║ 922 km   ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 12 August 2027    ║ 3548 Eurybates          ║ Eurybates: 64 km        ║ 1000 km  ║
║                   ║                         ║ (Queta satellite: 1 km) ║          ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 15 September 2027 ║ 15094 Polymele          ║ Polymele: 21 km         ║ 415 km   ║
║                   ║                         ║ (Satellite: 5 km)       ║          ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 18 April 2028     ║ 11351 Leucus            ║ 34 km                   ║ 1000 km  ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 11 November 2028  ║ 21900 Orus              ║ 51 km                   ║ 1000 km  ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 26 December 2030  ║ Earth (gravity assist)  ║ 12742 km                ║ 660 km   ║
╠═══════════════════╬═════════════════════════╬═════════════════════════╬══════════╣
║ 2 March 2033      ║ 617 Patroclus–Menoetius ║ Patroclus: 113 km       ║ 1000 km  ║
║                   ║                         ║ Menoetius: 104 km       ║          ║
╚═══════════════════╩═════════════════════════╩═════════════════════════╩══════════╝

Also, Polymele's satellite was discovered only after the Lucy spacecraft launched. That situation has already happened before with New Horizons and Pluto; Kerberos and Styx were discovered using the Hubble Space Telescope after New Horizons launched. Saturn's moons Helene, Calypso, and Telesto were discovered by ground-based observatories just months before the Voyager 1 flyby in 1980.

Following observations of an occultation on 26 March 2022, the Lucy mission team reported the discovery of a satellite around Polymele. The satellite is a smaller asteroid about 5–6 kilometers (3.1–3.7 miles) in diameter, orbiting nearly in the equatorial plane of Polymele at a distance of 204 km (127 mi). It will not be assigned a formal name until further observations determine its orbit. The Lucy team refers to the companion by the temporary informal name "Shaun," after Aardman Animations' animated sheep.

moar color! No quote marks or escape chars!

Posted by bzipitidoo on Friday March 24, @07:41PM (#13947)
18 Comments
Code

Seems obvious that the lack of color in nearly all printed text is for reasons of economy, and earlier, also reasons of technical difficulty.

But now, with color graphical displays so common, maybe we ought to think about using color more? Sure, there's making movies instead of writing books, but I am thinking of more color in the writings, somewhat like the syntax highlighting that many source code editors can do. Suppose quote marks were dropped entirely, replaced with text printed differently, like with a different background color? Here's a little vim syntax highlighting, to demonstrate:

" Simplistic way to hide quote marks

syn region quoted matchgroup=Quote start=+"+ end=+"+ end=+\n\n+ concealends
syn region quoted matchgroup=Quote start=+'+ end=+'+ end=+\n\n+ concealends
syn region quoted matchgroup=Quote start=+“+ end=+”+ end=+\n\n+ concealends contains=iquoted
syn region iquoted matchgroup=Quote start=+‘+ end=+’+ end=+\n\n+ concealends
if &background != "dark"
  hi def quoted ctermbg=lightmagenta ctermfg=black
  hi def iquoted ctermbg=lightcyan ctermfg=black
else
  hi def quoted ctermbg=magenta ctermfg=black
  hi def iquoted ctermbg=cyan ctermfg=black
endif
set conceallevel=2

Source the above into vim while looking at a text that uses quotes. I tested it on Project Gutenberg's copy of The Hound of the Baskervilles. It is mostly correct, but there are a few spots where the use of the same character to close a singly quoted section of text and to serve as an apostrophe confused it. I would like to take this further. Syntax highlighting mostly confines itself to coloring the text. If colors were leaned on more heavily, more characters could be eliminated. Perl style regexs in particular look a lot cleaner without all the backslashes. Let ordinary text be set to some other background color, and backslashed escaped characters left the default background color. Instead of

print "Hello!\n";

it can be

print Hello!n;

A regex such as

tr{/\\\r\n\b\f. }{_}; # change strange chars into an underscore

would look like (sort of, because, yeah, most forums also can't support colored text)

tr{/\rnbf. }{_}; # change strange chars into an underscore

You would be able to tell that there is a space in the match, just after the dot, because it would have a different background color. The slash, backslash, dot, and space characters would all be in the background color used to indicate they are literal, while the r, n, b, and f would be in whatever background color is used to indicate they are not literal, but are representations of special characters.

Here is the vim syntax commands I've hacked out to do this. It's far from complete or even working well.

" hide quote marks of string literals and the escape character of escape
" sequences.  Display the text of the literal
" in a different background color.

syn match esc '\\[^\\]' contains=escchar
syn match escchar '\\' conceal contained
syn match escesc '\\\\' conceal cchar=\
syn region dquoted matchgroup=Quote start=+"+ end=+"+ concealends contains=esc,escesc
syn region squoted matchgroup=Quote start=+'+ end=+'+ concealends contains=esc,escesc
syn region regex2 start='/' end='/' contains=esc,escesc
if &background != "dark"
  hi def quoted ctermbg=lightred guibg=#ffd0d0 ctermfg=black
else
  hi def squoted ctermbg=magenta ctermfg=black
  hi def dquoted ctermbg=magenta guibg=#500050 ctermfg=black
  hi def regex2 ctermbg=magenta guibg=#500050 ctermfg=black
  hi def escchar ctermbg=red guibg=#500000 ctermfg=white
  hi def esc ctermfg=magenta
endif
set conceallevel=2

Controlling webpage on PC with TV remote

Posted by takyon on Friday March 03, @04:54PM (#13703)
18 Comments
Code

Anyone have any experience with this?

I want to hook up PC to a TV, have a simple webpage on it with a 10-foot style user interface, and navigate the page mainly using the up/down/left/right/OK buttons on the remote. HDMI-CEC can allow my TV remote to communicate with a computer, e.g. a Raspberry Pi with LibreELEC on it. But I want to try a desktop OS with a web browser open.

I looked at the tabindex attribute. That allows you to tab and shift-tab forward and back through a series of elements and use the :focus pseudo-class to style the "selected" one, but it isn't going to allow up/down on a grid.

Worst case scenario, I use event listeners and do whatever I need to do to highlight the correct elements using arrow keys, such as detecting and comparing the x/y positions of all the elements to choose which one to jump to. Even then I might have to find a way to override the default behavior of the TV remote to make sure it can replace the keyboard input. I was wondering if there were any standards related to handling TV remote input, but I didn't see any.

48 GB RAM modules for consumers official

Posted by takyon on Friday January 20, @12:48PM (#13255)
15 Comments
Hardware

Micron (Crucial) is launching 24 GB and 48 GB DDR5-5600 RAM for both desktops and laptops:

Desktop
Laptop

Micron Unveils 24GB and 48GB DDR5 Memory Modules
Crucial Now Has 24 GB & 48 GB DDR5 Memory Options For Desktop & Laptop PCs

Presumably, some 4-slot systems will be able to support 192 GB of RAM, but ARK currently lists 128 GB maximum for recent Intel desktop parts. They have put inaccurate memory information on ARK before, so YMMV.

Memory speeds could suffer if you use 4 modules:

https://www.amd.com/en/products/cpu/amd-ryzen-9-7950x

2x1R DDR5-5200
2x2R DDR5-5200
4x1R DDR5-3600
4x2R DDR5-3600

With just 2 modules, you can have 96 GB and likely higher speeds/better overclocking potential. Not bad.

Previously: 24 GB and 48 GB DDR5 Modules?
Non-binary DDR5 is Finally Coming to Save Your Wallet

Chips to Replace Fans

Posted by takyon on Wednesday January 18, @02:45PM (#13238)
13 Comments
Hardware

Beyond fans: AirJet’s radical CPU cooling chips can double laptop performance

Solid State Active Cooling Could Revolutionize Thermals (16m21s video)

Supposedly appearing in some laptops by late 2023. The second generation of the product could be used in smartphones, some of which use fans.

JAVAAAAAAA

Posted by takyon on Wednesday December 28, @01:57AM (#13032)
8 Comments