helloadhavan/github_issues huggingface dataset:
Repository: ggml-org/llama.cpp
Pull request: CANN: Fix ggml_cann_set_device to avoid redundant device switches

### What does this PR do?
- Added a check to skip aclrtSetDevice if the current device is already set.
- Prevents unnecessary context switches while keeping thread/device consistency.

Changed files:
filename: ggml/src/ggml-cann/common.h
patch: @@ -526,7 +526,10 @@ struct ggml_backend_cann_context {
      */
     aclrtStream stream(int stream) {
         if (streams[stream] == nullptr) {
-            ggml_cann_set_device(device);
+            // If the device is not set here, destroying the stream later may cause a mismatch
+            // between the thread contexts where the stream was created and destroyed.
+            // However, I printed the device_id, thread_id, and stream, and they are all consistent.
+            ACL_CHECK(aclrtSetDevice(device));
             ACL_CHECK(aclrtCreateStream(&streams[stream]));
         }
         return streams[stream];

filename: ggml/src/ggml-cann/ggml-cann.cpp
patch: @@ -75,13 +75,12 @@
  * @param device The device ID to set.
  */
 void ggml_cann_set_device(const int32_t device) {
-    // TODO: uncomment these lines after empty context has fixed.
-    // int current_device;
-    // ACL_CHECK(aclrtGetDevice(&current_device));
+    int current_device = -1;
+    aclrtGetDevice(&current_device);
 
-    // if (device == current_device) {
-    //   return;
-    // }
+    if (device == current_device) {
+      return;
+    }
     ACL_CHECK(aclrtSetDevice(device));
 }
 
@@ -1729,6 +1728,7 @@ static bool ggml_cann_compute_forward(ggml_backend_cann_context& ctx,
             ggml_cann_get_rows(ctx, dst);
             break;
         case GGML_OP_SET_ROWS:
+            std::cout << "lcg GGML_OP_SET_ROWS"<< std::endl;
             ggml_cann_set_rows(ctx, dst);
             break;
         case GGML_OP_DUP:
Repository: denoland/deno
Pull request: ci: update action to create release PR


Changed files:
filename: tools/release/02_create_pr.ts
patch: @@ -34,7 +34,6 @@ $.log(`Opened PR at ${openedPr.data.url}`);
 function getPrBody() {
   let text = `Bumped versions for ${cliCrate.version}\n\n` +
     `Please ensure:\n` +
-    `- [ ] Target branch is correct (\`vX.XX\` if a patch release, \`main\` if minor)\n` +
     `- [ ] Crate versions are bumped correctly\n` +
     `- [ ] Releases.md is updated correctly (think relevancy and remove reverts)\n\n` +
     `To make edits to this PR:\n` +

filename: tools/release/release_doc_template.md
patch: @@ -84,32 +84,39 @@ Release checklist: <LINK TO THIS FORKED GIST GOES HERE>
 - ⛔ Verify that:
   - [ ] There are 24 assets on the
         [GitHub release draft](https://github.com/denoland/deno/releases/v$VERSION).
-  - [ ] There are 20 zip files for this version on
+  - [ ] There are 25 zip files for this version on
         [dl.deno.land](https://console.cloud.google.com/storage/browser/dl.deno.land/release/v$VERSION).
 
 - [ ] Publish the release on Github
 
+## Update https://deno.com
+
 - [ ] Run
       https://github.com/denoland/dotcom/actions/workflows/update_version.yml to
       automatically open a PR.
   - [ ] Merge the PR.
 
+## Update https://docs.deno.com
+
 - [ ] Run
       https://github.com/denoland/deno-docs/actions/workflows/update_versions.yml
       to automatically open a PR.
   - [ ] Merge the PR.
 
-- [ ] For minor releases: make sure https://github.com/mdn/browser-compat-data
-      has been updated to reflect Web API changes in this release. Usually done
-      ahead of time by @lucacasonato.
-
 ## Updating `deno_docker`
 
 - [ ] Run the version bump workflow:
       https://github.com/denoland/deno_docker/actions/workflows/version_bump.yml
 - [ ] This will open a PR. Review and merge it.
 - [ ] Create a `$VERSION` tag (_without_ `v` prefix).
 
+## Update MDN
+
+- [ ] If a new JavaScript or Web API has been added or enabled, make sure
+      https://github.com/mdn/browser-compat-data has been updated to reflect API
+      changes in this release. If in doubt message @bartlomieju and skip this
+      step.
+
 ## All done!
 
 - [ ] Write a message in company's #cli channel:
Repository: nodejs/node
Pull request: doc: add JonasBa to collaborators

Fixes https://github.com/nodejs/node/issues/57410

Changed files:
filename: .mailmap
patch: @@ -271,6 +271,7 @@ John McGuirk <johnmac81@gmail.com>
 John Musgrave <musgravejw@gmail.com>
 Johnny Ray Austin <johnny@johnnyray.me> <http://johnnyray.me>
 Jon Tippens <jwtippens@gmail.com>
+Jonas Badalic <jonas.badalic@gmail.com> <jonas@badalic.com>
 Jonas Pfenniger <jonas@pfenniger.name> <jonas@stvs.ch>
 Jonathan Gourlay <gourlayjd@linux.com>
 Jonathan Ong <jonathanrichardong@gmail.com> <jonathanong@users.noreply.github.com>

filename: README.md
patch: @@ -363,6 +363,8 @@ For information about the governance of the Node.js project, see
   **Jason Zhang** <<xzha4350@gmail.com>> (he/him)
 * [jkrems](https://github.com/jkrems) -
   **Jan Martin** <<jan.krems@gmail.com>> (he/him)
+* [JonasBa](https://github.com/JonasBa) -
+  **Jonas Badalic** <<jonas.badalic@gmail.com>> (he/him)
 * [joyeecheung](https://github.com/joyeecheung) -
   **Joyee Cheung** <<joyeec9h3@gmail.com>> (she/her)
 * [juanarbol](https://github.com/juanarbol) -
Repository: denoland/deno
Pull request: feat(tools/doc): display subitems in symbol overviews where applicable

https://github.com/denoland/deno_doc/pull/635

Changed files:
filename: Cargo.lock
patch: @@ -1489,9 +1489,9 @@ dependencies = [
 
 [[package]]
 name = "deno_doc"
-version = "0.148.0"
+version = "0.150.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "144fa07977ba9eeeb98bcd267b7f0a6f8033f0f1f20fd210e669b3c4f30cefa2"
+checksum = "c762829006b555837691b7016828eb1f93acf0a4ff344357b946898ea5b5610d"
 dependencies = [
  "ammonia",
  "anyhow",

filename: cli/Cargo.toml
patch: @@ -67,7 +67,7 @@ deno_ast = { workspace = true, features = ["bundler", "cjs", "codegen", "proposa
 deno_cache_dir = { workspace = true }
 deno_config = { version = "=0.35.0", features = ["workspace", "sync"] }
 deno_core = { workspace = true, features = ["include_js_files_for_snapshotting"] }
-deno_doc = { version = "0.148.0", features = ["html", "syntect"] }
+deno_doc = { version = "0.150.0", features = ["html", "syntect"] }
 deno_graph = { version = "=0.82.3" }
 deno_lint = { version = "=0.67.0", features = ["docs"] }
 deno_lockfile.workspace = true
Repository: nodejs/node
Pull request: meta: ignore mailmap changes in linux ci

This is ignored in test-macos, however the change was not ported to test-linux.

Changed files:
filename: .github/workflows/test-linux.yml
patch: @@ -3,6 +3,7 @@ name: Test Linux
 on:
   pull_request:
     paths-ignore:
+      - .mailmap
       - README.md
       - .github/**
       - '!.github/workflows/test-linux.yml'
@@ -14,6 +15,7 @@ on:
       - v[0-9]+.x-staging
       - v[0-9]+.x
     paths-ignore:
+      - .mailmap
       - README.md
       - .github/**
       - '!.github/workflows/test-linux.yml'
Repository: huggingface/transformers
Pull request: Fix typo in generation configuration for Janus model weight conversion

# What does this PR do?

Fixes an AttributeError caused by attempting to access generation_kwargs from a GenerationConfig object in `convert_janus_weights_to_hf.py`.

When running the conversion script, the following error occurs:

```bash
Traceback (most recent call last):
  File "/home/infidea/xxx/code/tmp/transformers/src/transformers/models/janus/convert_janus_weights_to_hf.py", line 504, in <module>
    main()
  File "/home/infidea/xxx/code/tmp/transformers/src/transformers/models/janus/convert_janus_weights_to_hf.py", line 492, in main
    convert_model(
  File "/home/infidea/xxx/code/tmp/transformers/src/transformers/models/janus/convert_janus_weights_to_hf.py", line 413, in convert_model
    model.generation_config.generation_kwargs["boi_token_id"] = tokenizer.vocab.get("<begin_of_image>")
AttributeError: 'GenerationConfig' object has no attribute 'generation_kwargs'
```

Changed the code from:
```
model.generation_config.generation_kwargs["boi_token_id"] = tokenizer.vocab.get("<begin_of_image>")
```

to:
```
model.generation_config.boi_token_id = tokenizer.vocab.get("<begin_of_image>")
```
This resolves the error by directly assigning the custom token ID as an attribute of the GenerationConfig object.


## Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

@amyeroberts, @qubvel

Changed files:
filename: src/transformers/models/janus/convert_janus_weights_to_hf.py
patch: @@ -407,9 +407,12 @@ def convert_model(
     with init_empty_weights():
         model = JanusForConditionalGeneration(config)
 
+    model.generation_config._from_model_config = False
     model.generation_config.temperature = 1
     model.generation_config.guidance_scale = 5
     model.generation_config.pad_token_id = tokenizer.vocab.get("<\uff5c\u2581pad\u2581\uff5c>")
+    if not hasattr(model.generation_config, "generation_kwargs"):
+        model.generation_config.generation_kwargs = {}
     model.generation_config.generation_kwargs["boi_token_id"] = tokenizer.vocab.get("<begin_of_image>")
 
     # Load and convert state dict
Repository: electron/electron
Pull request: fix: race condition in utilityProcess tests

Backport of #45926

See that PR for details.


Notes: none.

Changed files:
filename: spec/api-utility-process-spec.ts
patch: @@ -213,7 +213,6 @@ describe('utilityProcess module', () => {
       const child = utilityProcess.fork(fixtureFile, [], {
         stdio: 'pipe'
       });
-      await once(child, 'spawn');
       expect(child.stdout).to.not.be.null();
       let log = '';
       child.stdout!.on('data', (chunk) => {
@@ -278,7 +277,6 @@ describe('utilityProcess module', () => {
       const child = utilityProcess.fork(path.join(fixturesPath, 'log.js'), [], {
         stdio: 'pipe'
       });
-      await once(child, 'spawn');
       expect(child.stdout).to.not.be.null();
       let log = '';
       child.stdout!.on('data', (chunk) => {
@@ -311,7 +309,6 @@ describe('utilityProcess module', () => {
       const child = utilityProcess.fork(path.join(fixturesPath, 'log.js'), [], {
         stdio: ['ignore', 'pipe', 'pipe']
       });
-      await once(child, 'spawn');
       expect(child.stderr).to.not.be.null();
       let log = '';
       child.stderr!.on('data', (chunk) => {
Repository: denoland/deno
Pull request: fix(ext/webgpu): use correct variable name


Changed files:
filename: ext/webgpu/01_webgpu.js
patch: @@ -620,7 +620,7 @@ function createGPUSupportedLimits(limits) {
 }
 
 function normalizeLimit(limit) {
-  if (typeof num === "bigint") {
+  if (typeof limit === "bigint") {
     limit = Number(limit);
     if (limit === NumberPOSITIVE_INFINITY) {
       limit = NumberMAX_SAFE_INTEGER;
Repository: ggml-org/llama.cpp
Pull request: llama : add Cuda macro rules for .clang-format file

clang-format previously broke long CUDA macros (e.g. __launch_bounds__) into unreadable line breaks inside template declarations, such as:
```cpp
  template<int D, int ncols, int nwarps, int VKQ_stride,
           typename KQ_acc_t, bool use_logit_softcap>
      __launch_bounds__(nwarps*ggml_cuda_get_physical_warp_size(), 1)
```
will be break into
```cpp
  template<int D, int ncols, int nwarps, int VKQ_stride,
           typename KQ_acc_t, bool use_logit_softcap>
      __launch_bounds__(nwarps*ggml_cuda_get_physical_warp_size(),
 1)
```
This change adjusts formatting rules so that CUDA macros remain consistent and aligned with the surrounding template syntax.



Changed files:
filename: .clang-format
patch: @@ -22,6 +22,13 @@ AllowShortIfStatementsOnASingleLine: Never
 AllowShortLambdasOnASingleLine: Inline
 AllowShortLoopsOnASingleLine: false
 AlwaysBreakBeforeMultilineStrings: true
+# Treat CUDA keywords/attributes as "attribute macros" and avoid breaking lines inside them
+AttributeMacros:
+  - __host__
+  - __device__
+  - __global__
+  - __forceinline__
+  - __launch_bounds__
 BinPackArguments: true
 BinPackParameters: false # OnePerLine
 BitFieldColonSpacing: Both
Repository: facebook/react
Pull request: Use createRoot in ReactMockedComponent-test


Changed files:
filename: packages/react-dom/src/__tests__/ReactMockedComponent-test.js
patch: @@ -10,16 +10,18 @@
 'use strict';
 
 let React;
-let ReactDOM;
+let ReactDOMClient;
+let act;
 
 let MockedComponent;
 let ReactDOMServer;
 
 describe('ReactMockedComponent', () => {
   beforeEach(() => {
     React = require('react');
-    ReactDOM = require('react-dom');
+    ReactDOMClient = require('react-dom/client');
     ReactDOMServer = require('react-dom/server');
+    act = require('internal-test-utils').act;
 
     MockedComponent = class extends React.Component {
       render() {
@@ -30,15 +32,23 @@ describe('ReactMockedComponent', () => {
     MockedComponent.prototype.render = jest.fn();
   });
 
-  it('should allow a mocked component to be rendered', () => {
+  it('should allow a mocked component to be rendered', async () => {
     const container = document.createElement('container');
-    ReactDOM.render(<MockedComponent />, container);
+    const root = ReactDOMClient.createRoot(container);
+    await act(() => {
+      root.render(<MockedComponent />);
+    });
   });
 
-  it('should allow a mocked component to be updated in dev', () => {
+  it('should allow a mocked component to be updated in dev', async () => {
     const container = document.createElement('container');
-    ReactDOM.render(<MockedComponent />, container);
-    ReactDOM.render(<MockedComponent />, container);
+    const root = ReactDOMClient.createRoot(container);
+    await act(() => {
+      root.render(<MockedComponent />);
+    });
+    await act(() => {
+      root.render(<MockedComponent />);
+    });
   });
 
   it('should allow a mocked component to be rendered in dev (SSR)', () => {
Repository: ggml-org/llama.cpp
Pull request: releases : switch to rocWMMA develop branch, add gfx1151

https://github.com/slaren/llama.cpp/actions/runs/17712548365/job/50333575322

Changed files:
filename: .github/workflows/release.yml
patch: @@ -530,15 +530,13 @@ jobs:
     runs-on: windows-2022
 
     env:
-      # The ROCm version must correspond to the version used in the HIP SDK.
-      ROCM_VERSION: "6.4.2"
       HIPSDK_INSTALLER_VERSION: "25.Q3"
 
     strategy:
       matrix:
         include:
           - name: "radeon"
-            gpu_targets: "gfx1200;gfx1201;gfx1100;gfx1101;gfx1102;gfx1030;gfx1031;gfx1032"
+            gpu_targets: "gfx1151;gfx1200;gfx1201;gfx1100;gfx1101;gfx1102;gfx1030;gfx1031;gfx1032"
 
     steps:
       - name: Clone
@@ -548,7 +546,7 @@ jobs:
       - name: Clone rocWMMA repository
         id: clone_rocwmma
         run: |
-          git clone https://github.com/rocm/rocwmma --branch rocm-${{ env.ROCM_VERSION }} --depth 1
+          git clone https://github.com/rocm/rocwmma --branch develop --depth 1
 
       - name: Cache ROCm Installation
         id: cache-rocm
Repository: huggingface/transformers
Pull request: Move openai import

# What does this PR do?

Moving openai import which causes [failing test](https://app.circleci.com/pipelines/github/huggingface/transformers/139153/workflows/81ebf2c1-8e6b-4250-b673-6008589eb88a/jobs/1843853?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-checks-link&utm_content=summary)

Broke due to https://github.com/huggingface/transformers/pull/39454

cc @ArthurZucker 


Changed files:
filename: src/transformers/commands/serving.py
patch: @@ -31,7 +31,6 @@
 
 from huggingface_hub import model_info
 from huggingface_hub.constants import HF_HUB_OFFLINE
-from openai.types.chat import ChatCompletionMessageParam
 from PIL import Image
 
 import transformers
@@ -82,6 +81,7 @@
     from fastapi.responses import JSONResponse, StreamingResponse
     from openai.types.audio.transcription import Transcription
     from openai.types.audio.transcription_create_params import TranscriptionCreateParamsBase
+    from openai.types.chat import ChatCompletionMessageParam
     from openai.types.chat.chat_completion_chunk import (
         ChatCompletionChunk,
         Choice,
Repository: ggml-org/llama.cpp
Pull request: docker : enable rocWMMA in ROCm images, add gfx1151


Changed files:
filename: .devops/rocm.Dockerfile
patch: @@ -17,14 +17,11 @@ FROM ${BASE_ROCM_DEV_CONTAINER} AS build
 # gfx906 is deprecated
 #check https://rocm.docs.amd.com/projects/install-on-linux/en/docs-6.4.1/reference/system-requirements.html
 
-ARG ROCM_DOCKER_ARCH='gfx803,gfx900,gfx906,gfx908,gfx90a,gfx942,gfx1010,gfx1030,gfx1032,gfx1100,gfx1101,gfx1102,gfx1200,gfx1201'
-#ARG ROCM_DOCKER_ARCH=gfx1100
+ARG ROCM_DOCKER_ARCH='gfx803;gfx900;gfx906;gfx908;gfx90a;gfx942;gfx1010;gfx1030;gfx1032;gfx1100;gfx1101;gfx1102;gfx1200;gfx1201;gfx1151'
+#ARG ROCM_DOCKER_ARCH='gfx1151'
 
-# Set ROCm architectured
+# Set ROCm architectures
 ENV AMDGPU_TARGETS=${ROCM_DOCKER_ARCH}
-# Enable ROCm
-# ENV CC=/opt/rocm/llvm/bin/clang
-# ENV CXX=/opt/rocm/llvm/bin/clang++
 
 RUN apt-get update \
     && apt-get install -y \
@@ -39,8 +36,16 @@ WORKDIR /app
 
 COPY . .
 
+RUN git clone https://github.com/rocm/rocwmma --branch develop --depth 1
+
 RUN HIPCXX="$(hipconfig -l)/clang" HIP_PATH="$(hipconfig -R)" \
-    cmake -S . -B build -DGGML_HIP=ON -DAMDGPU_TARGETS=$ROCM_DOCKER_ARCH -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DCMAKE_BUILD_TYPE=Release -DLLAMA_BUILD_TESTS=OFF \
+    cmake -S . -B build \
+        -DGGML_HIP=ON \
+        -DGGML_HIP_ROCWMMA_FATTN=ON \
+        -DCMAKE_HIP_FLAGS="-I$(pwd)/rocwmma/library/include/" \
+        -DAMDGPU_TARGETS="$ROCM_DOCKER_ARCH" \
+        -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON \
+        -DCMAKE_BUILD_TYPE=Release -DLLAMA_BUILD_TESTS=OFF \
     && cmake --build build --config Release -j$(nproc)
 
 RUN mkdir -p /app/lib \
Repository: denoland/deno
Pull request: ci: switch release doc to mention dotcom


Changed files:
filename: tools/release/release_doc_template.md
patch: @@ -5,7 +5,7 @@
 - Forks and local clones of
   [`denoland/deno`](https://github.com/denoland/deno/),
   [`denoland/deno_std`](https://github.com/denoland/deno_std/),
-  [`denoland/dotland`](https://github.com/denoland/dotland/),
+  [`denoland/dotcom`](https://github.com/denoland/dotcom/),
   [`denoland/deno_docker`](https://github.com/denoland/deno_docker/)
   [`denoland/manual`](https://github.com/denoland/manual/)
 
@@ -163,15 +163,14 @@ verify on GitHub that everything looks correct.
 - [ ] Publish the release on Github
 
 - [ ] Run the
-      https://github.com/denoland/dotland/actions/workflows/update_versions.yml
+      https://github.com/denoland/dotcom/actions/workflows/update_versions.yml
       workflow.
   - [ ] This should open a PR. Review and merge it.
 
   <details>
      <summary>Failure Steps</summary>
 
-  1. Update https://github.com/denoland/dotland/blob/main/versions.json
-     manually.
+  1. Update https://github.com/denoland/dotcom/blob/main/versions.json manually.
   2. Open a PR and merge.
   </details>
Repository: ggml-org/llama.cpp
Pull request: SYCL: Add COUNT_EQUAL operator support

## Summary
This PR adds **GGML_OP_COUNT_EQUAL** support to the SYCL backend.

## Changes
- Implemented `ggml_sycl_op_count_equal()` and its wrapper `ggml_sycl_count_equal()`
- Registered `GGML_OP_COUNT_EQUAL` in:
  - `ggml_sycl_compute_forward()`
  - `ggml_backend_sycl_device_supports_op()`
- Updated `docs/ops.md` and regenerated `docs/ops/SYCL.csv` to reflect SYCL support
- Added unit tests for COUNT_EQUAL:
  - Regular test case
  - Typed tests covering `F32`, `F16`, `I32`, and `I16`

## Verification
- Built successfully with `cmake` + `make`
- Verified backend reports support:
  ```bash
  ./build/bin/test-backend-ops support -o COUNT_EQUAL -b sycl


Changed files:
filename: ggml/src/ggml-sycl/binbcast.cpp
patch: @@ -303,6 +303,10 @@ inline void ggml_sycl_op_sub(ggml_backend_sycl_context & ctx, ggml_tensor *dst)
     ggml_sycl_op_bin_bcast<bin_bcast_sycl<op_sub>>(ctx, dst->src[0], dst->src[1], dst);
 }
 
+inline void ggml_sycl_op_count_equal(ggml_backend_sycl_context & ctx, ggml_tensor * dst) {
+    ggml_sycl_op_bin_bcast<bin_bcast_sycl<op_count_equal>>(ctx, dst->src[0], dst->src[1], dst);
+}
+
 inline void ggml_sycl_op_mul(ggml_backend_sycl_context & ctx, ggml_tensor *dst) {
 
     ggml_sycl_op_bin_bcast<bin_bcast_sycl<op_mul>>(ctx, dst->src[0], dst->src[1], dst);
@@ -328,6 +332,11 @@ void ggml_sycl_sub(ggml_backend_sycl_context & ctx, ggml_tensor * dst) {
     ggml_sycl_op_sub(ctx, dst);
 }
 
+void ggml_sycl_count_equal(ggml_backend_sycl_context & ctx, ggml_tensor * dst) {
+    scope_op_debug_print scope_dbg_print(__func__, dst, /*num_src=*/2);
+    ggml_sycl_op_count_equal(ctx, dst);
+}
+
 void ggml_sycl_mul(ggml_backend_sycl_context & ctx, ggml_tensor * dst) {
     scope_op_debug_print scope_dbg_print(__func__, dst, /*num_src=*/2);
     ggml_sycl_op_mul(ctx, dst);

filename: ggml/src/ggml-sycl/binbcast.hpp
patch: @@ -16,6 +16,12 @@ static __dpct_inline__ float op_sub(const float a, const float b) {
     return a - b;
 }
 
+static __dpct_inline__ float op_count_equal(const float a, const float b) {
+    return (a == b) ? 1.0f : 0.0f;
+}
+
+void ggml_sycl_count_equal(ggml_backend_sycl_context & ctx, ggml_tensor * dst);
+
 static __dpct_inline__ float op_mul(const float a, const float b) {
     return a * b;
 }

filename: ggml/src/ggml-sycl/ggml-sycl.cpp
patch: @@ -3577,6 +3577,9 @@ static bool ggml_sycl_compute_forward(ggml_backend_sycl_context & ctx, struct gg
         case GGML_OP_SUB:
             ggml_sycl_sub(ctx, dst);
             break;
+        case GGML_OP_COUNT_EQUAL:
+            ggml_sycl_count_equal(ctx, dst);
+            break;
         case GGML_OP_ACC:
             ggml_sycl_acc(ctx, dst);
             break;
@@ -4356,6 +4359,7 @@ static bool ggml_backend_sycl_device_supports_op(ggml_backend_dev_t dev, const g
         case GGML_OP_ADD:
         case GGML_OP_ADD1:
         case GGML_OP_SUB:
+        case GGML_OP_COUNT_EQUAL:
         case GGML_OP_MUL:
         case GGML_OP_DIV:
         case GGML_OP_REPEAT:
Repository: huggingface/transformers
Pull request: [Trackio] Allow single-gpu training and monitor power

# What does this PR do?

<img width="1146" height="962" alt="Screenshot 2025-07-22 at 5 18 42 PM" src="https://github.com/user-attachments/assets/45fd0d90-a150-4bf4-9a26-c30b49449b1a" />



Changed files:
filename: src/transformers/integrations/integration_utils.py
patch: @@ -1115,19 +1115,22 @@ def on_log(self, args, state, control, model=None, logs=None, **kwargs):
             "total_flos",
         ]
 
-        if is_torch_available() and torch.cuda.is_available() and dist.is_available() and dist.is_initialized():
+        if is_torch_available() and torch.cuda.is_available():
             device_idx = torch.cuda.current_device()
             total_memory = torch.cuda.get_device_properties(device_idx).total_memory
             memory_allocated = torch.cuda.memory_allocated(device_idx)
-
+            power = torch.cuda.power_draw(device_idx)
             gpu_memory_logs = {
                 f"gpu/{device_idx}/allocated_memory": memory_allocated / (1024**3),  # GB
                 f"gpu/{device_idx}/memory_usage": memory_allocated / total_memory,  # ratio
+                f"gpu/{device_idx}/power": power / 1000,  # Watts
             }
-
-            gathered_logs = [None] * dist.get_world_size()
-            dist.all_gather_object(gathered_logs, gpu_memory_logs)
-            gpu_memory_logs = {k: v for d in gathered_logs for k, v in d.items()}
+            if dist.is_available() and dist.is_initialized():
+                gathered_logs = [None] * dist.get_world_size()
+                dist.all_gather_object(gathered_logs, gpu_memory_logs)
+                gpu_memory_logs = {k: v for d in gathered_logs for k, v in d.items()}
+        else:
+            gpu_memory_logs = {}
 
         if not self._initialized:
             self.setup(args, state, model)