29, జులై 2026, బుధవారం

a chemical company ................PRIMO.............




KL UNIV FACING HEADWINDS .....4 months back i stated this …today that is revealed ………………………METAPHORICALLY, ANY FORCES Or CHALLENGES THAT MAKE PROGRESS, GROWTH, Or SUCCESS MORE DIFFICULT

today that is revealed .....................................Mr ram.a.dayinaboyina N. R.I ,

 Dear Faculty Members, 

Greetings,

As of today, we have secured 176 placements out of the 820 students registered for CRT, indicating a clear need to significantly improve our placement conversions.

To improve these numbers, I request that everyone focus fully on the rigorous, high-quality implementation of student capstone projects.

Strong, industry-relevant projects are the most effective way for students to demonstrate their practical skills and problem-solving abilities to recruiters.

By ensuring exceptional standards in these projects, we will directly empower our students to secure better placement opportunities and higher salary packages.

Thank you

24, జులై 2026, శుక్రవారం

KPIT | CUTTING EDGE AUTOMOTIVE SOFTWARE, BEST PLACE TO GROW..........................................................Peer only 2 companies in this category

 today KPIT,  TATA ELXI is the peer

...............................................KPIT offers Multicore Architecture, Application Software, and CDDs for the motor controller and End-to-End Verification and Validation, Test Automation Strategy ..





16, జులై 2026, గురువారం

AN INVALID CONTRACT LACKS THE LEGAL FOUNDATIONREQUIRED FOR ENFORCEABILITY. ......................prof ram.a.dayinaboyina

 

·         IF ESSENTIAL ELEMENTS LIKE OFFER, ACCEPTANCE, CONSIDERATION, CAPACITY, OR LEGALITY ARE MISSING, THE AGREEMENT CANNOT BE UPHELD. 

·         VOID AND VOIDABLE CONTRACTS DIFFER IN HOW THEY CAN BE ENFORCED ORCANCELED.

·         VOID CONTRACTS ARE UNENFORCEABLE FROM THE START, WHILE VOIDABLE CONTRACTS REMAIN VALID UNLESS ONE PARTY CHOOSES TO CANCEL THEM.

·         COMMON ISSUES LIKE ILLEGALITY, MISREPRESENTATION, OR LACK OF CAPACITY CAN INVALIDATE CONTRACTS.

·         FRAUD, COERCION, VAGUE TERMS, OR UNFAIR CONDITIONS OFTEN LEAD TO CONTRACTS BEING CHALLENGED OR VOIDED.

·         INVALID CONTRACTS CREATE OPERATIONAL, FINANCIAL, AND COMPLIANCE RISKS.

·         THEY CAN RESULT IN DISPUTES, LOST REVENUE, AND LACK OF LEGAL RECOURSE WHEN OBLIGATIONS ARE NOT MET.

·         RESOLVING AN INVALID CONTRACT REQUIRES STRUCTURED ACTION.

·         REVIEWING TERMS, GATHERING EVIDENCE, SEEKING LEGAL ADVICE, AND PURSUING RESCISSION OR RENEGOTIATION ARE KEY STEPS.

·         STRONG CONTRACT GOVERNANCE HELPS PREVENT INVALID AGREEMENTS.

·         CLEAR DRAFTING, VALIDATED CONSENT, AND LIFECYCLE MANAGEMENT ENSURE CONTRACTS ARE ENFORCEABLE FROM THE START.

13, జులై 2026, సోమవారం

(OFFLOADING DATA ON GPU) logic ...........................CODE SNIPPET by........ Professor Ram.a.Dayinaboyina@ OFFICIAL RECORDS

    // Device arrays

    float *d_a, *d_b, *d_c;


    // Allocate memory on the device (GPU)

    cudaMalloc((void**)&d_a, N * sizeof(float));

    cudaMalloc((void**)&d_b, N * sizeof(float));

    cudaMalloc((void**)&d_c, N * sizeof(float));


    // Copy host arrays to device (Offloading data on GPU)

    cudaMemcpy(d_a, h_a, N * sizeof(float), cudaMemcpyHostToDevice);

    cudaMemcpy(d_b, h_b, N * sizeof(float), cudaMemcpyHostToDevice);



Running in FUNCTIONAL mode...
Compiling...
Executing...
Elapsed time for GPU computation: 7.97878 ms
Exit status: 0

CUDA_LOG_FILE.........................................

  CUDA_LOG_FILE

Another good way to identify CUDA errors is with the CUDA_LOG_FILE environment variable. When this environment variable is set, the CUDA driver will write error messages encountered out to a file whose path is specified in the environment variable. For example, take the following incorrect CUDA code, which attempts to launch a thread block which is larger than the maximum supported by any architecture.


__global__ void k()

{ }


int main()

{

        k<<<8192, 4096>>>(); // Invalid block size

        CUDA_CHECK(cudaGetLastError());

        return 0;

}

Building and running this, the check after the kernel launch detects and reports the error using the macros illustrated in Section 2.1.7.


$ nvcc errorLogIllustration.cu -o errlog

$ ./errlog

CUDA Runtime Error: /home/cuda/intro-cpp/errorLogIllustration.cu:24:1 = invalid argument

However, when the application is run with CUDA_LOG_FILE set to a text file, that file contains a bit more information about the error.


$ env CUDA_LOG_FILE=cudaLog.txt ./errlog

CUDA Runtime Error: /home/cuda/intro-cpp/errorLogIllustration.cu:24:1 = invalid argument

$ cat cudaLog.txt

[12:46:23.854][137216133754880][CUDA][E] One or more of block dimensions of (4096,1,1) exceeds corresponding maximum value of (1024,1024,64)

[12:46:23.854][137216133754880][CUDA][E] Returning 1 (CUDA_ERROR_INVALID_VALUE) from cuLaunchKernel

Setting CUDA_LOG_FILE to stdout or stderr will print to standard out and standard error, respectively. Using the CUDA_LOG_FILE environment variable, it is possible to capture and identify CUDA errors, even if the application does not implement proper error checking on CUDA return values. This approach can be extremely powerful for debugging, but the environment variable alone does not allow an application to handle and recover from CUDA errors at runtime. The error log management feature of CUDA also allows a callback function to be registered with the driver which will be called whenever an error is detected. This can be used to capture and handle errors at runtime, and also to integrate CUDA error logging seamlessly into an application’s existing logging system.


Section 4.8 shows more examples of the error log management feature of CUDA. Error log management and CUDA_LOG_FILE are available with NVIDIA Driver version r570 and later.

TOMORROW MY CONCENTRATION IS ON BRIGHT COM GROUP HYD BASED DIGITAL ADVT COMPANY MNC............................

 9.8 to 10.10 /- my pre....

Boiler Room year 2000..................... A gritty drama that pulls back the curtain on "pump-and-dump" . stock market ..........First, some wealthy individuals pump money into a stock; once it reaches a certain price point, they deliberately dump their holdings, causing the stock price to crash.



 


4 TRADES MIN 3% POSITIONAL TRADE………………..almost risk free.....

 Blr photo voltaic power ltd solar power………Infosys .ai s/w , logistic , healthcare and wellness 4 companies ......................mr ram nse/bse







8, జులై 2026, బుధవారం

NVIDIA'S MAIN CORPORATE HEADQUARTERS IS LOCATED AT 2788 SAN TOMAS EXPRESSWAY IN SANTA CLARA, CALIFORNIA. THE CAMPUS SERVES AS THE CENTRAL HUB FOR THE COMPANY'S GLOBAL OPERATIONS AND IS A RENOWNED LANDMARK IN SILICON VALLEY.........................

 #include<cuda.h>

#include<stdio.h>


int main(void) {

    void MatrixMultiplication(float *, float *, float *, int);

    const int Width = 5;

    float M[Width*Width], N[Width*Width], P[Width*Width];

    for(int i = 0; i < (Width*Width) ; i++) {

        M[i] = 5;

        N[i] = 5;

        P[i] = 0;

    }

    MatrixMultiplication(M, N, P, Width);

    for(int i = 0; i < (Width*Width) ; i++) {

        printf("%d \n", P[i]);

    }

    int quit;

    scanf("%d",&quit);

    return 0;

}


//Matrix multiplication kernel - thread specification

__global__ void MatrixMulKernel(float *Md, float *Nd, float *Pd, int Width) {

    //2D Thread ID

    int tx = threadIdx.x;

    int ty = threadIdx.y;


    //Pvalue stores the Pd element that is computed by the thread

    float Pvalue = 0;


    for(int k = 0; k < Width ; ++k) {

        float Mdelement = Md[ty*Width + k];

        float Ndelement = Nd[k*Width + tx];

        Pvalue += (Mdelement*Ndelement);

    }


    Pd[ty*Width + tx] = Pvalue;

}


void MatrixMultiplication(float *M, float *N, float *P, int Width) {

    int size = Width*Width*sizeof(float);

    float *Md, *Nd, *Pd;


    //Transfer M and N to device memory

    cudaMalloc((void**)&Md, size);

    cudaMemcpy(Md,M,size,cudaMemcpyHostToDevice);

    cudaMalloc((void**)&Nd, size);

    cudaMemcpy(Nd,N,size,cudaMemcpyHostToDevice);


    //Allocate P on the device

    cudaMalloc((void**)&Pd,size);


    //Setup the execution configuration

    dim3 dimBlock(Width,Width);

    dim3 dimGrid(1,1);


    //Launch the device computation threads!

    MatrixMulKernel<<<dimGrid,dimBlock>>>(Md,Nd,Pd,Width);


    //Transfer P from device to host

    cudaMemcpy(P,Pd,size,cudaMemcpyDeviceToHost);


    //Free device matrices

    cudaFree(Md);

    cudaFree(Nd);

    cudaFree(Pd);

}


output:-

1

0

0

.............

// // Demonstration using a single 1D grid and 1D block size // /* * Example of vector addition : * Array of floats x is added to array of floats y and the * result is placed back in y * */

 #include <math.h> // ceil function

#include <stdio.h>  // printf
#include <iostream> // alternative cout print for illustration

#include <cuda.h>

void initialize(float *x, float *y, int N);
void verifyCorrect(float *y, int N);
void getArguments(int argc, char **argv, int *blockSize);

///////
// error checking macro taken from Oakridge Nat'l lab training code:
// https://github.com/olcf/cuda-training-series
////////
#define cudaCheckErrors(msg) \
    do { \
        cudaError_t __err = cudaGetLastError(); \
        if (__err != cudaSuccess) { \
            fprintf(stderr, "Fatal error: %s (%s at %s:%d)\n", \
                msg, cudaGetErrorString(__err), \
                __FILE__, __LINE__); \
            fprintf(stderr, "*** FAILED - ABORTING\n"); \
            exit(1); \
        } \
    } while (0)


// Kernel function based on 1D grid of 1D blocks of threads
// In this version, thread number is:
//  its block number in the grid (blockIdx.x) times 
// the threads per block plus which thread it is in that block.
//
// This thread id is then the index into the 1D array of floats.
// This represents the simplest type of mapping:
// Each thread takes care of one element of the result
__global__ void vecAdd(float *x, float *y, int n)
{
    // Get our global thread ID designed to be an array index
    int id = (blockIdx.x * blockDim.x) + threadIdx.x;
 
    // Make sure we do not go out of bounds;
    // Threads allocated could be larger than array length
    if (id < n)
        y[id] = x[id] + y[id];
}

////////////////////                   main
int main(int argc, char **argv)
{
  printf("Vector addition by managing memory ourselves.\n");
  // Set up size of arrays for vectors 
  int N = 32*1048576;
  // TODO: try changng the size of the arrays by doubling or
  //       halving (32 becomes 64 or 16). Note how the grid size changes.
  printf("size (N) of 1D arrays are: %d\n\n", N);

  // host vectors, which are arrays of length N
  float *x, *y;

  // Size, in bytes, of each vector
  size_t bytes = N*sizeof(float);

  // 1.1 Allocate memory for each vector on host
  x = (float*)malloc(bytes);
  y = (float*)malloc(bytes);

  // 1.2 initialize x and y arrays on the host
  initialize(x, y, N);  // set values in each vector

   // device array storage
  float *d_x;
  float *d_y;

  printf("allocate vectors and copy to device\n");

  // 2. Allocate memory for each vector on GPU device
  cudaMalloc(&d_x, bytes);
  cudaMalloc(&d_y, bytes);
  cudaCheckErrors("allocate device memory");

  // 3. Copy host vectors to device
  cudaMemcpy( d_x, x, bytes, cudaMemcpyHostToDevice);
  cudaMemcpy( d_y, y, bytes, cudaMemcpyHostToDevice);
  cudaCheckErrors("mem copy to device");

  // Default number of threads in each thread block
  int blockSize = 256;
  getArguments(argc, argv, &blockSize); //update blocksize from cmd line
 
  // Number of thread blocks in grid needs to be based on array size
  // and block size
  int gridSize = (int)ceil((float)N/blockSize);
 
  printf("add vectors on device using grid with ");
  printf("%d blocks of %d threads each.\n", gridSize, blockSize);
  // 4. Execute the kernel
  vecAdd<<<gridSize, blockSize>>>(d_x, d_y, N);
  cudaCheckErrors("vecAdd kernel call");

  // 5. Ensure that device is finished
  cudaDeviceSynchronize();
  cudaCheckErrors("Failure to synchronize device");

  // 6. Copy array back to host (use original y for this)
  // Note that essentially the device gets synchronized
  // before this is performed.
  cudaMemcpy( y, d_y, bytes, cudaMemcpyDeviceToHost);
  cudaCheckErrors("mem copy device to host");

  // 7. Check that the computation ran correctly
  verifyCorrect(y, N); 

  printf("execution complete\n");

  // 8.1 Free device memory
  cudaFree(d_x);
  cudaFree(d_y);
  cudaCheckErrors("free cuda memory");

  // 8.2 Release host memory
  free(x);
  free(y);

  return 0;
}
///////////////////////// end main

///////////////////////////////// helper functions

// To initialize or reset the arrays for each trial
void initialize(float *x, float *y, int N) {
  // initialize x and y arrays on the host
  for (int i = 0; i < N; i++) {
    x[i] = 1.0f;
    y[i] = 2.0f;
  }
}

// check whether the kernel functions worked as expected
void verifyCorrect(float *y, int N) {
  // Check for errors (all values should be 3.0f)
  float maxError = 0.0f;
  for (int i = 0; i < N; i++)
    maxError = fmaxf(maxError, fabs(y[i]-3.0f));
  std::cout << "Max error: " << maxError << std::endl;
}

// simple argument gather for this simple example program
void getArguments(int argc, char **argv, int *blockSize) {

  if (argc == 2) {
    *blockSize = atoi(argv[1]);
  }

}


output:-
Vector addition by managing memory ourselves. size (N) of 1D arrays are: 33554432 allocate vectors and copy to device add vectors on device using grid with 131072 blocks of 256 threads each. Max error: 0 execution complete [exit 0 · 4966 ms]